Giter Site home page Giter Site logo

justincpresley / ndn-hydra Goto Github PK

View Code? Open in Web Editor NEW
3.0 4.0 7.0 530 KB

ndn-hydra: A Python-coded NDN distributed repository with five focused attributes: resiliency, scalability, usability, efficiency, and security.

License: Apache License 2.0

Python 99.45% Shell 0.55%
named-data-networking hydra distributed-systems distributed repository data-centric networking python resilience resiliency

ndn-hydra's People

Contributors

daniel-achee avatar justincpresley avatar nick-mynatt avatar pulsejet avatar susmit85 avatar tianyuan129 avatar zixuanzhong avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

ndn-hydra's Issues

NameError: name 'aio' is not defined

Environment

  • Linux kernel 5.4.0
  • Docker python:3.9 image
  • NFD 0.7.1-37-gf28a061c, Unix socket mounted into the container at /run/nfd.sock
  • NFD uses best-route strategy for / prefix and multicast strategy for /ndn/multicast /ndn/broadcast prefixes
  • ndn-hydra 94fcd45 installed via pip: python -m pip install git+https://github.com/UCLA-IRL/ndn-hydra.git@94fcd451809c0f0f7af970125a93e17c083ff8a3

Steps to reproduce

root@1234c9c3487a:~# rm -rf ~/.ndn

root@1234c9c3487a:~# ndnsec key-gen /operator
Bv0BJwcpCAhvcGVyYXRvcggDS0VZCAiMpUShAmi6oQgEc2VsZiMIAAABfOM9IaAU
CRgBAhkEADbugBVbMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEVMRDf+/bcuOM
Q01muFncIerTldWzhtXXqeIU8WVlqi8KqyMQ5zvMNJmBfF1UHV57BCQeWfGKkFj3
GBc6ioqZaRZKGwEDHBsHGQgIb3BlcmF0b3IIA0tFWQgIjKVEoQJouqH9AP0m/QD+
DzE5NzAwMTAxVDAwMDAwMP0A/w8yMDQxMTAyOVQwMDQwMDYXRjBEAiBg7Wwk6KLs
JtxOvcLo30n2JaSYjVOHaxCyqGCmQmEJJwIgNTVcCVKfzZE+N7UyAkah/iBxRnhO
suVi8xAVC4zQIZk=

root@1234c9c3487a:~# for I in $(seq 4); do sleep 0.5; ndn-hydra-repo -rp /hydra -n $(hostname -s) &>repo-$I.log & done
[1] 997
[2] 1003
[3] 1009
[4] 1015

root@1234c9c3487a:~# dd if=/dev/urandom of=/tmp/1.bin bs=1MiB count=1
1+0 records in
1+0 records out
1048576 bytes (1.0 MB, 1.0 MiB) copied, 0.015635 s, 67.1 MB/s

root@1234c9c3487a:~# ndn-hydra-client insert -r /hydra -f /1.bin -p /tmp/1.bin
DEBUG:asyncio:Using selector: EpollSelector
DEBUG:root:Connected to NFD node, start running...
/1.bin/v=3/seg=1
size: 1048576
3992
Created 128 chunks under name /client/upload/1.bin
DEBUG:root:Packet received 6, b'\x06\xfd\x01\x1d\x07q\x08\tlocalhost\x08\x03nfd\x08\x03rib\x08\x08register\x08\x11h\x0f\x07\r\x08\x06client\x08\x03msg\x08\x08\x00\x00\x01|\xe3=\xe00\x08\x08m)\xb9\xdb\xad\xa57\x1f\x08\x05\x16\x03\x1b\x01\x00\x08"\x17 /*\xe7\x7f\xa4\x85$\t\x85+&\xd8\xaa \xf1P\rIL\x94Ym7\x815_\x05\xf4vi%\xed\x14\x04\x19\x02\x03\xe8\x15,e*f\x01\xc8g\x07Successh\x1c\x07\r\x08\x06client\x08\x03msgi\x02\x01\to\x01\x00j\x01\x00l\x01\x01\x16+\x1b\x01\x03\x1c&\x07$\x08\tlocalhost\x08\x08operator\x08\x03KEY\x08\x08\xfc\xff\t\xb89r\xe7\xcd\x17G0E\x02 \x19\xf2\xff>Ur8pD\x00\x02\x0fe\x86\xf3\xae\xa4\xbc\xd5|\xfe\xf8\xa9\x82\xb7T\xfbU\xa0\x1a5n\x02!\x00\xe11B\xdc^\x19wG\xbfVkYQ\x9a\xc8u\x92\x8f\x96;3\x1b,\xe3&h/\x8eA\xe9\xb0\x17'
DEBUG:root:Data received /localhost/nfd/rib/register/h%0F%07%0D%08%06client%08%03msg/%00%00%01%7C%E3%3D%E00/m%29%B9%DB%AD%A57%1F/%16%03%1B%01%00/%17%20%2F%2A%E7%7F%A4%85%24%09%85%2B%26%D8%AA%20%F1P%0DIL%94Ym7%815_%05%F4vi%25%ED
DEBUG:root:Registration for /client/msg succeeded: 200 Success
/hydra/insert
INFO:root:publishing a message to topic: /hydra/insert
DEBUG:root:sending notify interest: /hydra/insert/notify
DEBUG:root:Packet received 6, b'\x06\xfd\x011\x07{\x08\tlocalhost\x08\x03nfd\x08\x03rib\x08\x08register\x08\x1bh\x19\x07\x17\x08\x06client\x08\x06upload\x08\x051.bin\x08\x08\x00\x00\x01|\xe3=\xe09\x08\x08\xf78h\x86v\xaeW\xed\x08\x05\x16\x03\x1b\x01\x00\x08"\x17 L\x8dp\xfb8\xff.yz:\xac\xc7n\xb3,\xdbw?\x9d\xda\xdf\xc7M\x85\xfa\xad\xdb\xf0\xbeV@\x9c\x14\x04\x19\x02\x03\xe8\x156e4f\x01\xc8g\x07Successh&\x07\x17\x08\x06client\x08\x06upload\x08\x051.bini\x02\x01\to\x01\x00j\x01\x00l\x01\x01\x16+\x1b\x01\x03\x1c&\x07$\x08\tlocalhost\x08\x08operator\x08\x03KEY\x08\x08\xfc\xff\t\xb89r\xe7\xcd\x17G0E\x02 Ql\x8c\xf4]\xea\r,i#\xde~\xa1\xa3\x8a\xb3\x96\xef\xe1H3\xa1\xc7\xc0\x8c\xfb\t.\x89v\xfdQ\x02!\x00\x90-F\x8e\xb3|\xae\xc3\xcbq\xbeK/\xdf*\x91K\xa1\xb61c"\xa9\x8eSQ\x15o\x94N.\xba'
DEBUG:root:Data received /localhost/nfd/rib/register/h%19%07%17%08%06client%08%06upload%08%051.bin/%00%00%01%7C%E3%3D%E09/%F78h%86v%AEW%ED/%16%03%1B%01%00/%17%20L%8Dp%FB8%FF.yz%3A%AC%C7n%B3%2C%DBw%3F%9D%DA%DF%C7M%85%FA%AD%DB%F0%BEV%40%9C
DEBUG:root:Registration for /client/upload/1.bin succeeded: 200 Success
DEBUG:root:Packet received 5, b'\x05-\x07"\x08\x06client\x08\x03msg\x08\x05hydra\x08\x06insert\x08\x04\x850\x14\xca\n\x047\x81\xafI"\x01 '
DEBUG:root:Interest received /client/msg/hydra/insert/%850%14%CA
DEBUG:root:received msg interest: /client/msg/hydra/insert/%850%14%CA
DEBUG:root:reply msg with name /client/msg/hydra/insert/%850%14%CA
DEBUG:root:Packet received 6, b'\x06\xaa\x079\x08\x05hydra\x08\x06insert\x08\x06notify\x02 s\xf7\xb0\x87\xb40naQX\x15\x8c[\xc2t\x97y\xc3\xcf\t\xff\x0b\x8c\\\xef\xa1;.Wv\xb1\xd3\x14\x03\x18\x01\x00\x16 \x1b\x01\x03\x1c\x1b\x07\x19\x08\x08operator\x08\x03KEY\x08\x08\x8c\xa5D\xa1\x02h\xba\xa1\x17F0D\x02 \x12\x83\xe4\xe4R\xa7h \xb4\x93\xb4\xb3\x1e\xd3\x9dK\xc2\xb3\xbc\x1b\xd2\x00\xe0;F93\xce\xf5k\'\x96\x02 <2\x0c\xd2\xcbfh\xd2Y\xa4R@Q\xc8\x04\xda\x07Q$Rv\xa5\x015{\x18]"\x03K\xf8\x83'
DEBUG:root:Data received /hydra/insert/notify/params-sha256=73f7b087b4306e615158158c5bc2749779c3cf09ff0b8c5cefa13b2e5776b1d3
DEBUG:root:received notify response for: [bytearray(b'\x08\x06client'), bytearray(b'\x08\x03msg'), bytearray(b'\x08\x05hydra'), bytearray(b'\x08\x06insert'), bytearray(b'\x08\x04\x850\x14\xca')]
DEBUG:root:erased state for data /client/msg/hydra/insert/%850%14%CA
INFO:root:Published an insert msg and was acknowledged by a subscriber
Client finished Insert Command!
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01\x00\n\x04Y\xd1B)\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=0
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01\x01\n\x04<?\xfb\xc0\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=1
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01\x02\n\x04\xe4\xf4\xaeE\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=2
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01\x03\n\x04[-j\xa6\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=3
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01\x04\n\x04\xb2\x0fr\xc5\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=4
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01\x05\n\x04\x1d\x997\xa0\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=5
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01\x06\n\x04\x1e\xbcM\x8c\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=6
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01\x07\n\x04\x18o\x12\x05\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=7
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01\x08\n\x04G\xdd\xba\x10\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=8
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01\t\n\x04\xc9\x10e\x00\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=9
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01\n\n\x04\x05^\x97\xf4\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=10
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01\x0b\n\x04\\\xb7\xfc\xb5\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=11
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01\x0c\n\x04\x14\xf0\x11\xd7\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=12
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01\r\n\x04\xd4\xf6\xfet\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=13
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01\x0e\n\x04\x9c\xa3W\xdd\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=14
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01\x0f\n\x04\x9cF\xeca\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=15
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01\x10\n\x04\xac\x0fVO\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=16
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01\x11\n\x04E\xa2\xbd\xbc\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=17
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01\x12\n\x04:\xdd\x04H\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=18
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01\x13\n\x04\xf2\xd2\xbd\xc6\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=19
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01\x14\n\x04\xbf\x93\xa7+\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=20
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01\x15\n\x04\xc9\xe0\x8fo\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=21
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01\x16\n\x04\x93\xa8\xabG\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=22
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01\x17\n\x04MI\xa33\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=23
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01\x18\n\x04\x92\xd3\xa3\xfb\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=24
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01\x19\n\x04\x8e:\x15\x8d\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=25
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01\x1a\n\x04\x9d\xa1%b\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=26
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01\x1b\n\x04.\x90\xb2\x8a\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=27
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01\x1c\n\x04\x0c\x83\xdf0\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=28
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01\x1d\n\x04\xc3\x98.\xb3\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=29
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01\x1e\n\x04\xcfK\xa4\xa8\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=30
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01\x1f\n\x04w\n\xacV\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=31
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01 \n\x04|\x08\xe7\xbf\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=32
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01!\n\x04We\x8cj\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=33
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01"\n\x04\xac\xe1\xdf]\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=34
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01#\n\x04#\x8a\x06a\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=35
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01$\n\x04v\x8f\xc0\xcb\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=36
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01%\n\x04q\x15C\x86\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=37
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01&\n\x04{#M2\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=38
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01\'\n\x04\xa4\xcfP&\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=39
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01(\n\x04\x87\xa6<\xaa\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=40
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01)\n\x04\x89x\xd6}\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=41
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01*\n\x04\xe4m\xee@\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=42
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01+\n\x04E\xc2\xa9\xc1\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=43
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01,\n\x04\xaa\xc7\xe8\r\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=44
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01-\n\x04\xc3O\xc0(\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=45
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01.\n\x04Q@\x01X\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=46
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01/\n\x04\xc5$\xc0r\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=47
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x010\n\x04\x08\xf4\x9c\xe3\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=48
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x011\n\x04h}\x02\xed\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=49
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x012\n\x04\xa7\x076\xd7\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=50
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x013\n\x04\xde\x01z\x9c\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=51
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x014\n\x04u\xc5\xc6\xa0\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=52
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x015\n\x04=\x8e%F\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=53
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x016\n\x04\x98\x01\x9b\r\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=54
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x017\n\x04\xd9<\xc9_\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=55
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x018\n\x04%\xdc\x03g\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=56
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x019\n\x04\xb4\x06\x82W\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=57
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01:\n\x04\x17\xa8\xbd\x00\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=58
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01;\n\x04<\x0c\x8bv\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=59
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01<\n\x04k\x074\xdd\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=60
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01=\n\x04W\x0b\x18\xf9\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=61
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01>\n\x04\xed\xc5\x83\x19\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=62
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01?\n\x04\xc0\x05\xd5\x05\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=63
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01@\n\x04Cw\xc0\xcd\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=64
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01A\n\x04cGxa\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=65
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01B\n\x04\x02\xe1\'S\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=66
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01C\n\x04e\xd7\xb2\xb9\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=67
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01D\n\x04B\x0b\xe3 \x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=68
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01E\n\x04\xcfC!\xdf\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=69
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01F\n\x04\xb5X\xa8/\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=70
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01G\n\x04\x8b\x95\x08\x0b\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=71
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01H\n\x04O\x1a\xa9\xbb\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=72
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01I\n\x047XeL\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=73
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01J\n\x04\x8aS\x88\x11\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=74
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01K\n\x04\xf2o9\x8b\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=75
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01L\n\x04\xe5L\xc1\xbf\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=76
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01M\n\x04\xf8\x1b\xb1p\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=77
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01N\n\x04F\x14\xce\x8a\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=78
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01O\n\x04\x98\xa8\xf7\x13\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=79
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01P\n\x04\xecdp\'\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=80
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01Q\n\x04\xac\x0eS\r\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=81
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01R\n\x04\xbc\x16uL\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=82
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01S\n\x04P\x9c~\xb5\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=83
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01T\n\x04\xe9\xe9\xf0H\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=84
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01U\n\x04\xbeb\x14$\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=85
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01V\n\x04\xd4>P\xec\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=86
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01W\n\x04>\x8f|\xad\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=87
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01X\n\x04\xb7\xbd\x94k\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=88
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01Y\n\x04\x92\xee\xaf\x88\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=89
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01Z\n\x04f\x9e\x17\x82\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=90
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01[\n\x04\x92\xaa\x7fT\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=91
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01\\\n\x04)\xedS\xa3\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=92
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01]\n\x04\x81H\xc3\x11\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=93
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01^\n\x04kV\x0b`\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=94
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01_\n\x04ee}\r\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=95
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01`\n\x04\x82s\xb4O\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=96
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01a\n\x04.Z\xd4O\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=97
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01b\n\x04\x12te\xc3\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=98
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01c\n\x045\x1e\xcd\x01\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=99
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01d\n\x04t\xe3/\xa7\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=100
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01e\n\x04L9\x118\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=101
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01f\n\x04\xe4E\x96\x12\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=102
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01g\n\x04\x9c\'\x7f\xf2\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=103
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01h\n\x04\xd1\\\xf5V\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=104
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01i\n\x04#\xe6VV\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=105
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01j\n\x04\xf7\x92\x9f\xc8\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=106
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01k\n\x04A\xc8h&\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=107
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01l\n\x04]<\tU\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=108
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01m\n\x04\xad\x0cT.\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=109
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01n\n\x04\x0f\xaf\x11\xf3\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=110
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01o\n\x04\xa9l*\x08\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=111
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01p\n\x04\xc0\xf1\xe3+\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=112
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01q\n\x04\xc9_\x83\xde\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=113
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01r\n\x04}N\xf1\xb0\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=114
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01s\n\x04\x86{\xa11\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=115
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01t\n\x04\xa7\xa3\x0b\xfb\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=116
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01u\n\x04I\x8f\xd8\xd9\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=117
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01v\n\x04P\xc9\xfd\xde\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=118
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01w\n\x04\r~\xc2\xb9\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=119
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01x\n\x04[.\x18\xa0\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=120
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01y\n\x04\xb4\x9b\xca\x80\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=121
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01z\n\x04\xee\x1aa\xcd\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=122
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01{\n\x04\xc2\x7f\xdds\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=123
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01|\n\x04N\xc9\x90\x91\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=124
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01}\n\x04?7\xf3\xd2\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=125
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01~\n\x04\xf8\x9d2\x8f\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=126
DEBUG:root:Packet received 5, b'\x05)\x07\x1a\x08\x06client\x08\x06upload\x08\x051.bin!\x01\x7f\n\x04\x9c\xb7\xdc\xf7\x0c\x02\x03\xe8"\x01 '
DEBUG:root:Interest received /client/upload/1.bin/seg=127
INFO:root:Manually shutdown

root@1234c9c3487a:~# ndn-hydra-client query -r /hydra -q /files
DEBUG:asyncio:Using selector: EpollSelector
DEBUG:root:Connected to NFD node, start running...
DEBUG:root:Packet received 6, b"\x06\xfd\x02\xa7\x07\x15\x08\x05hydra\x08\x05query\x08\x05files\x14\x07\x18\x01\x00\x19\x02\x0b\xb8\x15\xfd\x02\x19\xca\xfd\x02\x15\x07\x07\x08\x051.bin\xcc\x01\x02\xcd\x01\x80\xce\x029\x92\xce\x02\xb4\xc6\xce\x02\xa9\xac\xce\x02?\xc8\xce\x02\x1f2\xce\x02\x9f\xf9\xce\x02\xc4\x15\xce\x02Us\xce\x02\x9cv\xce\x02\xbb\x89\xce\x02\x13\xe9\xce\x02\xcb\x99\xce\x02\xe1W\xce\x02m\x17\xce\x02\xebQ\xce\x02an\xce\x02\xe6G\xce\x02\\\xe7\xce\x02\xacl\xce\x02\xe8\x97\xce\x02:\x96\xce\x02{J\xce\x02f\x99\xce\x02\x0e\x1b\xce\x02\x1d\xa5\xce\x02,\r\xce\x02\xad\x99\xce\x02\x1a\xf4\xce\x02\x10\xb3\xce\x02\xd5\xe1\xce\x02\xec0\xce\x02\xa8\xd8\xce\x02\n\xaf\xce\x02\xbfH\xce\x026\xda\xce\x02\xc5\xa7\xce\x02\xe9#\xce\x02a\x02\xce\x02\xe8!\xce\x02\xf9F\xce\x02\x88\xd0\xce\x02\xa9\x95\xce\x02\xe1\xcf\xce\x02\xc3\xcf\xce\x02\xdc\xa6\xce\x02\x95\x8a\xce\x02c\xf3\xce\x02\xb1&\xce\x02@\x1d\xce\x02\xd5Y\xce\x02\ts\xce\x027'\xce\x02\xee3\xce\x023\xe0\xce\x02\x88\xe5\xce\x02\xe7\xf0\xce\x02\xd2b\xce\x02\xf2.\xce\x02\xda\xe1\xce\x02\x02\xb4\xce\x02\x90\xad\xce\x02\x94/\xce\x02d\xa9\xce\x02\xad\x18\xce\x02\x95\xc2\xce\x02\xf4\xc7\xce\x02\xf67\xce\x02}\x1b\xce\x02^\x14\xce\x02\xa3\xd9\xce\x02I7\xce\x02<\xca\xce\x02\xd7R\xce\x02\xf7l\xce\x02\xe2<\xce\x02\xd5\x1f\xce\x02\xc3Q\xce\x02HA\xce\x02\xfd\x9e\xce\x02\x02\xd8\xce\x02P\xc9\xce\x028\xcd\xce\x02\xab4\xce\x02T\xba\xce\x02d\x94\xce\x02|\xca\xce\x02:\x10\xce\x02\xb1\x91\xce\x02C\xb3\xce\x02I\xb3\xce\x02G>\xce\x02\xda\xaa\xce\x02\xae\x05\xce\x02\xa5p\xce\x02\xd0\x01\xce\x02\xda\xa4\xce\x02\xa2~\xce\x02\x0cr\xce\x02\xf9m\xce\x022t\xce\x02\xd7c\xce\x020w\xce\x02\xe3s\xce\x02\xbd\x8a\xce\x02@\x08\xce\x02\x1c[\xce\x02\x0b\xd9\xce\x02\xb4\xb9\xce\x02?\x8c\xce\x02.l\xce\x02F\x92\xce\x02\xc2\xe3\xce\x02\xec8\xce\x02^\xaf\xce\x02\xad@\xce\x02+\x19\xce\x02\xaf1\xce\x02\xda\x91\xce\x02\xff\xa2\xce\x02\xde\x18\xce\x02W+\xce\x02A\xdc\xce\x02\x07\xbd\xce\x02\x03\x05\xce\x02&\xa6\xce\x02\xb6\xe4\xce\x02{\xea\xce\x02\xc3D\xcf\x04\x00\x10\x00\x00\x16 \x1b\x01\x03\x1c\x1b\x07\x19\x08\x08operator\x08\x03KEY\x08\x08\x8c\xa5D\xa1\x02h\xba\xa1\x17F0D\x02 \x1an\x7fS\xc1a\xa6\xec\xde\xd4\x93\x13\x06gJ\xc6\xb7xs\xcaLVfs\xa3nuZ\xa2\xed9X\x02 )\xe19dB\xb5`k7\xc2z\x94VN\xfd1\xe7\x9bQ\xd7)6<\xa3)\xf2Y\x02\xddxL\x05"
DEBUG:root:Data received /hydra/query/files
List of All Files
File 1 meta-info
        file_name: /1.bin
        desired_copies: 2
        size: 1048576
Client finished Query Command!
INFO:root:Manually shutdown

root@1234c9c3487a:~# ndn-hydra-client fetch -r /hydra -f /1.bin -p /tmp/1.fetch
DEBUG:asyncio:Using selector: EpollSelector
DEBUG:root:Connected to NFD node, start running...
DEBUG:root:Packet received 6, b'\x06\xbd\x07\x18\x08\x05hydra\x08\x05fetch\x08\x051.bin!\x01\x00\x14\x08\x18\x01\x01\x1a\x03!\x01\x7f\x15-/hydra/sid/1234c9c3487a2368692490/fetch/1.bin\x16 \x1b\x01\x03\x1c\x1b\x07\x19\x08\x08operator\x08\x03KEY\x08\x08\x8c\xa5D\xa1\x02h\xba\xa1\x17F0D\x02 /\x01\x92\x03O\xf2e\xfe\xcd:\xb2\x87\xb0\xc2\xf2\x10\x81\xd2\xfd\x83\r\xcf\xb6`\xbd2\xf3J\x01i\xc45\x02 W\xc0\xeebm\xad\xe4\x1d\xde\xfa\xa9\xdf\xfa\x01\xaf&\x07\x90i\x06\xc2\xd6Of]*%)\x92VTr'
DEBUG:root:Data received /hydra/fetch/1.bin/seg=0
Traceback (most recent call last):
  File "/usr/local/bin/ndn-hydra-client", line 8, in <module>
    sys.exit(main())
  File "/usr/local/lib/python3.9/site-packages/ndn_hydra/client/main.py", line 172, in main
    app.run_forever(after_start=run_hydra_client(app, args))
  File "/usr/local/lib/python3.9/site-packages/ndn/app.py", line 323, in run_forever
    aio.run(self.main_loop(after_start))
  File "/usr/local/lib/python3.9/asyncio/runners.py", line 44, in run
    return loop.run_until_complete(main)
  File "/usr/local/lib/python3.9/asyncio/base_events.py", line 642, in run_until_complete
    return future.result()
  File "/usr/local/lib/python3.9/site-packages/ndn/app.py", line 292, in main_loop
    await task
  File "/usr/local/lib/python3.9/site-packages/ndn/app.py", line 267, in starting_task
    await after_start
  File "/usr/local/lib/python3.9/site-packages/ndn_hydra/client/main.py", line 156, in run_hydra_client
    await client.fetch(filename, args.path, True)
  File "/usr/local/lib/python3.9/site-packages/ndn_hydra/client/main.py", line 130, in fetch
    return await self.cfetch.fetch_file(file_name, local_filename, overwrite)
  File "/usr/local/lib/python3.9/site-packages/ndn_hydra/client/functions/fetch.py", line 81, in fetch_file
    semaphore = aio.Semaphore(10)
NameError: name 'aio' is not defined

ndn-hydra fails to start if ~/.ndn directory is deleted

Environment

  • Linux kernel 5.4.0
  • Docker python:3.9 image
  • NFD 0.7.1-30-ga103334b, Unix socket mounted into the container at /run/nfd.sock
  • NFD uses multicast strategy for all prefixes
  • ndn-hydra 0.1.1 installed via pip
  • ndn-hydra repository revision 01b1b11 cloned, for client scripts

Steps to reproduce

root@2997f67aae11:/# rm -rf ~/.ndn
root@2997f67aae11:/# ndn-hydra -rp /hydra -n $(hostname -s) -s $RANDOM
Exception in thread Thread-1:
Traceback (most recent call last):
  File "/usr/local/lib/python3.9/threading.py", line 973, in _bootstrap_inner
    self.run()
  File "/usr/local/lib/python3.9/site-packages/ndn_hydra/main/main.py", line 120, in run
    app = NDNApp()
  File "/usr/local/lib/python3.9/site-packages/ndn/app.py", line 63, in __init__
    self.keychain = default_keychain(config['pib'], config['tpm'])
  File "/usr/local/lib/python3.9/site-packages/ndn/client_conf.py", line 101, in default_keychain
    pib = KeychainSqlite3(os.path.join(pib_loc, 'pib.db'), tpm)
  File "/usr/local/lib/python3.9/site-packages/ndn/security/keychain/keychain_sqlite3.py", line 277, in __init__
    cursor = self.conn.execute('SELECT tpm_locator FROM tpmInfo')
sqlite3.OperationalError: no such table: tpmInfo

NameError: name 'rgs' is not defined

Environment

  • Linux kernel 5.4.0
  • Docker python:3.9 image
  • NFD 0.7.1-30-ga103334b, Unix socket mounted into the container at /run/nfd.sock
  • NFD uses multicast strategy for all prefixes
  • ndn-hydra 0.2.1 installed via pip

Steps to reproduce

root@4c4540439250:/# ndn-hydra-repo -rp /hydra -n $(hostname -s) -s $RANDOM
Traceback (most recent call last):
  File "/usr/local/bin/ndn-hydra-repo", line 8, in <module>
    sys.exit(main())
  File "/usr/local/lib/python3.9/site-packages/ndn_hydra/repo/main/main.py", line 154, in main
    cmd_args = process_cmd_opts()
  File "/usr/local/lib/python3.9/site-packages/ndn_hydra/repo/main/main.py", line 80, in process_cmd_opts
    args = parse_cmd_opts()
  File "/usr/local/lib/python3.9/site-packages/ndn_hydra/repo/main/main.py", line 73, in parse_cmd_opts
    rgs["logging_path"] = "{workpath}/session.log".format(workpath=workpath)
NameError: name 'rgs' is not defined

Inserted file not found

Environment

  • Linux kernel 5.4.0
  • Docker python:3.9 image
  • NFD 0.7.1-30-ga103334b, Unix socket mounted into the container at /run/nfd.sock
  • NFD uses multicast strategy for all prefixes
  • ndn-hydra 0.1.1 installed via pip
  • ndn-hydra repository revision 01b1b11 cloned, for client scripts

Steps to reproduce

In first console:

ndn-hydra -rp /hydra -n $(hostname -s) -s $RANDOM

# only one instance of the repo server is running

In second console:

root@2997f67aae11:~/ndn-hydra# dd if=/dev/urandom of=/tmp/1.bin bs=1M count=1
1+0 records in
1+0 records out
1048576 bytes (1.0 MB, 1.0 MiB) copied, 0.0156227 s, 67.1 MB/s
root@2997f67aae11:~/ndn-hydra# python3 ./client/main.py insert -r /hydra -f /1.bin -p /tmp/1.bin/1.bin/v=3/seg=1
size: 1048576
5ed8
Created 128 chunks under name /client/upload/1.bin
/hydra/insert
Client finished Insert Command!
root@2997f67aae11:~/ndn-hydra# python3 ./client/main.py fetch -r /hydra -f /1.bin -p /tmp/1.fetch
Distributed Repo does not have that file.
Client finished Fetch Command!
root@2997f67aae11:~/ndn-hydra# python3 ./client/main.py query -r /hydra -q /files
Query command received no data packet back
Client finished Query Command!
root@2997f67aae11:~/ndn-hydra# python3 ./client/main.py query -r /hydra -q /sid
Distributed Repo does not know that query.
Client finished Query Command!
root@2997f67aae11:~/ndn-hydra# python3 ./client/main.py query -r /hydra -q /sids
List of All Session IDs
['13008']
Client finished Query Command!
root@2997f67aae11:~/ndn-hydra# python3 ./client/main.py query -r /hydra -q /file/1.bin
File Does Not Exists in The Repo
Client finished Query Command!

session.log

1625948295.388497  INFO      Read handle: listening to /hydra/fetch
1625948295.388819  INFO      Read handle: listening to /hydra/sid/13008/fetch
1625948295.389026  INFO      Query handle: listening to /hydra/query
1625948295.389241  INFO      Query handle: listening to /hydra/sid/13008/query
1625948295.400569  INFO      SVSync: started svsync
1625948295.400656  INFO      SVSyncCore: started svsync core
1625948295.400753  INFO      SVSyncCore: started listening to /hydra/group
1625948295.400795  INFO      AsyncScheduler: started scheduler for an async function
1625948295.400894  INFO      SVSync: started listening to /13008/hydra/group
1625948295.401673  INFO      SVSyncCore: sent sync /hydra/group/201=
1625948315.469537  INFO      SVSync: publishing data /13008/hydra/group/epoch-1
1625948315.470440  INFO      Cache save: /13008/hydra/group/epoch-1
1625948315.473041  INFO      SVSyncCore: sent sync /hydra/group/201=%CA%06%2F13008%CB%01%01
1625948335.539984  INFO      SVSync: publishing data /13008/hydra/group/epoch-2
1625948335.540899  INFO      Cache save: /13008/hydra/group/epoch-2
1625948335.543484  INFO      SVSyncCore: sent sync /hydra/group/201=%CA%06%2F13008%CB%01%02
1625948355.612031  INFO      SVSync: publishing data /13008/hydra/group/epoch-3
1625948355.612900  INFO      Cache save: /13008/hydra/group/epoch-3
1625948355.615472  INFO      SVSyncCore: sent sync /hydra/group/201=%CA%06%2F13008%CB%01%03
1625948375.681854  INFO      SVSync: publishing data /13008/hydra/group/epoch-4
1625948375.682397  INFO      Cache save: /13008/hydra/group/epoch-4
1625948375.684686  INFO      SVSyncCore: sent sync /hydra/group/201=%CA%06%2F13008%CB%01%04
1625948395.752082  INFO      SVSync: publishing data /13008/hydra/group/epoch-5
1625948395.752965  INFO      Cache save: /13008/hydra/group/epoch-5
1625948395.755531  INFO      SVSyncCore: sent sync /hydra/group/201=%CA%06%2F13008%CB%01%05
1625948403.057636  INFO      [cmd][FETCH] nacked client due to no file in repo
1625948403.067120  INFO      Read handle: data not found /hydra/fetch/1.bin/seg=0
1625948415.821233  INFO      SVSync: publishing data /13008/hydra/group/epoch-6
1625948415.821755  INFO      Cache save: /13008/hydra/group/epoch-6
1625948415.824136  INFO      SVSyncCore: sent sync /hydra/group/201=%CA%06%2F13008%CB%01%06
1625948418.953714  INFO      [cmd][QUERY] query received: files
1625948418.954684  ERROR     Task exception was never retrieved
future: <Task finished name='Task-23' coro=<NDNApp._receive() done, defined at /usr/local/lib/python3.9/site-packages/ndn/app.py:70> exception=NameError("name 'FileList' is not defined")>
Traceback (most recent call last):
  File "/usr/local/lib/python3.9/site-packages/ndn/app.py", line 105, in _receive
    await self._on_interest(name, param, app_param, sig, raw_packet=data)
  File "/usr/local/lib/python3.9/site-packages/ndn/app.py", line 512, in _on_interest
    node.callback(name, param, app_param, **kwargs)
  File "/usr/local/lib/python3.9/site-packages/ndn_hydra/handle_protocol/query_handle.py", line 74, in _on_interest
    filelist = FileList()
NameError: name 'FileList' is not defined
1625948426.185772  INFO      [cmd][QUERY] unknown query received
1625948431.278076  INFO      [cmd][QUERY] query received: sids
1625948435.890416  INFO      SVSync: publishing data /13008/hydra/group/epoch-7
1625948435.890979  INFO      Cache save: /13008/hydra/group/epoch-7
1625948435.893412  INFO      SVSyncCore: sent sync /hydra/group/201=%CA%06%2F13008%CB%01%07
1625948455.958560  INFO      SVSync: publishing data /13008/hydra/group/epoch-8
1625948455.959066  INFO      Cache save: /13008/hydra/group/epoch-8
1625948455.961420  INFO      SVSyncCore: sent sync /hydra/group/201=%CA%06%2F13008%CB%01%08
1625948457.911642  INFO      [cmd][QUERY] query received: file
1625948475.974022  INFO      SVSync: publishing data /13008/hydra/group/epoch-9
1625948475.974773  INFO      Cache save: /13008/hydra/group/epoch-9
1625948475.976929  INFO      SVSyncCore: sent sync /hydra/group/201=%CA%06%2F13008%CB%01%09

Binary logs: ndn-repo-hydra-13008.tar.gz

Necessity of --sessionid argument

Currently, ndn-hydra-repo command requires a --sessionid argument, which must be unique when the repo is restarted.
Having it as a required argument is error-prone because the user may inadvertently enter a duplicate value.
(I often use bash $RANDOM but it may have collisions.)

It is safer and more user friendly to delete this argument and generate a random number as sessionid.
For example, the random sessionid could have 8 octets consisting of:

  • 32-bit timestamp (microseconds since epoch truncated to lower 32 bits)
  • 32-bit cryptographical secure random number

Inserted file not found

Environment

  • Linux kernel 5.4.0
  • Docker python:3.9 image
  • NFD 0.7.1-36-gaf3ff5a8, Unix socket mounted into the container at /run/nfd.sock
  • NFD uses multicast strategy for all prefixes
  • ndn-hydra e31cd0d installed via pip: python -m pip install git+https://github.com/UCLA-IRL/ndn-hydra.git@e31cd0df55bd83ccce7403fc8867438309205976

Steps to reproduce

root@a073af3366d3:~# rm -rf ~/.ndn

root@a073af3366d3:~# ndnsec key-gen /operator
Bv0BKQcpCAhvcGVyYXRvcggDS0VZCAhzqRnPYxecqQgEc2VsZiMIAAABfFizHcAU
CRgBAhkEADbugBVbMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE9hPm4Ec9Kfs0
Z32qjPWvDYyjFDPPVUO8ki9PhwXxfn7UXN9llAyyxWY67xqHUsqX4kVofkUtwGzs
U0zgly4a8hZKGwEDHBsHGQgIb3BlcmF0b3IIA0tFWQgIc6kZz2MXnKn9AP0m/QD+
DzE5NzAwMTAxVDAwMDAwMP0A/w8yMDQxMTAwMlQwMzAxNDYXSDBGAiEAwFZx3B9d
C9oVpr/apBslsfhCGBktKxsg8gLV8m9uDSACIQD9d4Us3pDD5iDwNdH4mYMT+dpj
FqE3zfqgMTpc1jxp9A==

root@a073af3366d3:~# for I in $(seq 4); do sleep 0.5; ndn-hydra-repo -rp /hydra -n $(hostname -s) -s $RANDOM &>repo-$I.log & done
[1] 878
[2] 884
[3] 890
[4] 896

root@a073af3366d3:~# dd if=/dev/urandom of=/tmp/1.bin bs=1MiB count=1
1+0 records in
1+0 records out
1048576 bytes (1.0 MB, 1.0 MiB) copied, 0.0143396 s, 73.1 MB/s

root@a073af3366d3:~# ndn-hydra-client insert -r /hydra -f /1.bin -p /tmp/1.bin
/1.bin/v=3/seg=1
size: 1048576
081e
Created 128 chunks under name /client/upload/1.bin
/hydra/insert
Client finished Insert Command!

root@a073af3366d3:~# echo $?
0

root@a073af3366d3:~# ndn-hydra-client query -r /hydra -q /files
List of All Files
File 1 meta-info
        file_name: /1.bin
        desired_copies: 2
        size: 1048576
File 2 meta-info
        file_name: /1.bin
        desired_copies: 2
        size: 1048576
File 3 meta-info
        file_name: /1.bin
        desired_copies: 2
        size: 1048576
File 4 meta-info
        file_name: /1.bin
        desired_copies: 2
        size: 1048576
Client finished Query Command!

root@a073af3366d3:~# echo $?
0

root@a073af3366d3:~# ndn-hydra-client fetch -r /hydra -f /1.bin -p /tmp/1.fetch
Distributed Repo does not have that file.
Client finished Fetch Command!

root@a073af3366d3:~# echo $?
0

Observations

This issue is similar to #13 and #23, but query is working now, while fetch still does not work.

Despite that ndn-hydra-client fetch failed, it exited with zero.
It should have exited with a non-zero code.

It seems that if I start the ndn-hydra-client insert command right after starting ndn-hydra-repo processes, query would report there's no file just like #23.
Insertion would become effective only after all four ndn-hydra-repo processes are converged with each other, as indicated by 1633575745.919077 INFO SVSyncCore: vector /12398:1 /16611:1 /16733:1 /18086:1 in the log.
However, even if ndn-hydra-client insert fails, it would still exit with zero, and there's no way to know whether it actually succeeded other than doing a query afterwards.

Logs

hydra-20211006.tar.gz

nfdc route

This is taken while ndn-hydra-client insert command is running.

$ docker exec nfd nfdc route
prefix=/ndn/broadcast nexthop=255 origin=static cost=1000000 flags=child-inherit|capture expires=never
prefix=/ndn/multicast nexthop=255 origin=static cost=1000000 flags=child-inherit|capture expires=never
prefix=/12398/hydra/group nexthop=307 origin=app cost=0 flags=child-inherit expires=never
prefix=/16611/hydra/group nexthop=308 origin=app cost=0 flags=child-inherit expires=never
prefix=/16733/hydra/group nexthop=309 origin=app cost=0 flags=child-inherit expires=never
prefix=/18086/hydra/group nexthop=306 origin=app cost=0 flags=child-inherit expires=never
prefix=/hydra/msg nexthop=306 origin=app cost=0 flags=child-inherit expires=never
prefix=/hydra/msg nexthop=307 origin=app cost=0 flags=child-inherit expires=never
prefix=/hydra/msg nexthop=308 origin=app cost=0 flags=child-inherit expires=never
prefix=/hydra/msg nexthop=309 origin=app cost=0 flags=child-inherit expires=never
prefix=/hydra/sid/12398/fetch nexthop=307 origin=app cost=0 flags=child-inherit expires=never
prefix=/hydra/sid/12398/query nexthop=307 origin=app cost=0 flags=child-inherit expires=never
prefix=/hydra/sid/16611/fetch nexthop=308 origin=app cost=0 flags=child-inherit expires=never
prefix=/hydra/sid/16611/query nexthop=308 origin=app cost=0 flags=child-inherit expires=never
prefix=/hydra/sid/16733/fetch nexthop=309 origin=app cost=0 flags=child-inherit expires=never
prefix=/hydra/sid/16733/query nexthop=309 origin=app cost=0 flags=child-inherit expires=never
prefix=/hydra/sid/18086/fetch nexthop=306 origin=app cost=0 flags=child-inherit expires=never
prefix=/hydra/sid/18086/query nexthop=306 origin=app cost=0 flags=child-inherit expires=never
prefix=/hydra/fetch nexthop=306 origin=app cost=0 flags=child-inherit expires=never
prefix=/hydra/fetch nexthop=307 origin=app cost=0 flags=child-inherit expires=never
prefix=/hydra/fetch nexthop=308 origin=app cost=0 flags=child-inherit expires=never
prefix=/hydra/fetch nexthop=309 origin=app cost=0 flags=child-inherit expires=never
prefix=/hydra/group nexthop=306 origin=app cost=0 flags=child-inherit expires=never
prefix=/hydra/group nexthop=307 origin=app cost=0 flags=child-inherit expires=never
prefix=/hydra/group nexthop=308 origin=app cost=0 flags=child-inherit expires=never
prefix=/hydra/group nexthop=309 origin=app cost=0 flags=child-inherit expires=never
prefix=/hydra/query nexthop=306 origin=app cost=0 flags=child-inherit expires=never
prefix=/hydra/query nexthop=307 origin=app cost=0 flags=child-inherit expires=never
prefix=/hydra/query nexthop=308 origin=app cost=0 flags=child-inherit expires=never
prefix=/hydra/query nexthop=309 origin=app cost=0 flags=child-inherit expires=never
prefix=/hydra/delete/notify nexthop=306 origin=app cost=0 flags=child-inherit expires=never
prefix=/hydra/delete/notify nexthop=307 origin=app cost=0 flags=child-inherit expires=never
prefix=/hydra/delete/notify nexthop=308 origin=app cost=0 flags=child-inherit expires=never
prefix=/hydra/delete/notify nexthop=309 origin=app cost=0 flags=child-inherit expires=never
prefix=/hydra/insert/notify nexthop=306 origin=app cost=0 flags=child-inherit expires=never
prefix=/hydra/insert/notify nexthop=307 origin=app cost=0 flags=child-inherit expires=never
prefix=/hydra/insert/notify nexthop=308 origin=app cost=0 flags=child-inherit expires=never
prefix=/hydra/insert/notify nexthop=309 origin=app cost=0 flags=child-inherit expires=never
prefix=/client/msg nexthop=310 origin=app cost=0 flags=child-inherit expires=never
prefix=/client/upload/1.bin nexthop=310 origin=app cost=0 flags=child-inherit expires=never
prefix=/localhop/nfd nexthop=256 origin=app cost=0 flags=child-inherit expires=never
prefix=/localhost/nfd nexthop=256 origin=app cost=0 flags=child-inherit expires=never

ndn-hydra fails to start if ~/.ndn directory is deleted

Environment

  • Linux kernel 5.4.0
  • Docker python:3.9 image
  • NFD 0.7.1-30-ga103334b, Unix socket mounted into the container at /run/nfd.sock
  • NFD uses multicast strategy for all prefixes
  • ndn-hydra 0.2.1 installed via pip
  • applied workaround for #21:
    sed -i 's/\brgs\b/args/' /usr/local/lib/python3.9/site-packages/ndn_hydra/repo/main/main.py

Steps to reproduce

root@4c4540439250:/# rm -rf ~/.ndn
root@4c4540439250:/# ndn-hydra-repo -rp /hydra -n $(hostname -s) -s $RANDOM
Exception in thread Thread-1:
Traceback (most recent call last):
  File "/usr/local/lib/python3.9/threading.py", line 973, in _bootstrap_inner
    self.run()
  File "/usr/local/lib/python3.9/site-packages/ndn_hydra/repo/main/main.py", line 117, in run
    app = NDNApp()
  File "/usr/local/lib/python3.9/site-packages/ndn/app.py", line 63, in __init__
    self.keychain = default_keychain(config['pib'], config['tpm'])
  File "/usr/local/lib/python3.9/site-packages/ndn/client_conf.py", line 101, in default_keychain
    pib = KeychainSqlite3(os.path.join(pib_loc, 'pib.db'), tpm)
  File "/usr/local/lib/python3.9/site-packages/ndn/security/keychain/keychain_sqlite3.py", line 277, in __init__
    cursor = self.conn.execute('SELECT tpm_locator FROM tpmInfo')
sqlite3.OperationalError: no such table: tpmInfo

It's same error as #14, which is not resolved.

pip install: Invalid script entry point: A callable suffix is required

Steps to reproduce:

docker run --rm python:3.9 pip install ndn-hydra

Expected: installation succeeds

Actual: error message

Installing collected packages: urllib3, pytz, pyparsing, pygtrie, pycryptodomex, MarkupSafe, idna, chardet, certifi, aenum, toml, sphinxcontrib-serializinghtml, sphinxcontrib-qthelp, sphinxcontrib-jsmath, sphinxcontrib-htmlhelp, sphinxcontrib-devhelp, sphinxcontrib-applehelp, snowballstemmer, requests, PyYAML, python-ndn, Pygments, py, pluggy, packaging, Jinja2, iniconfig, imagesize, docutils, babel, attrs, alabaster, Sphinx, pytest, ndn-python-repo, sphinx-rtd-theme, sphinx-autodoc-typehints, ndn-svs, ndn-hydra
ERROR: For req: ndn-hydra. Invalid script entry point: <ExportEntry ndn-hydra-client = client.main.main.main:None []> - A callable suffix is required. Cf https://packaging.python.org/specifications/entry-points/#use-for-scripts for more information.

It seems that the published ndn-hydra-0.1.0.tar.gz file does not contain the source code for client component.

ndn-hydra-repo ModuleNotFoundError: No module named 'src'

Environment

  • Linux kernel 5.4.0
  • Docker python:3.9 image
  • NFD 0.7.1-30-ga103334b, Unix socket mounted into the container at /run/nfd.sock
  • NFD uses multicast strategy for all prefixes
  • ndn-hydra 0.1.2 installed via pip

Steps to reproduce

root@5d8aef893a93:/# ndn-hydra-repo -rp /hydra -n $(hostname -s) -s $RANDOM
Traceback (most recent call last):
  File "/usr/local/bin/ndn-hydra-repo", line 5, in <module>
    from src.ndn.hydra.repo.main.main import main
ModuleNotFoundError: No module named 'src'

Additional Information

Content of /usr/local/bin/ndn-hydra-repo is:

#!/usr/local/bin/python
# -*- coding: utf-8 -*-
import re
import sys
from src.ndn.hydra.repo.main.main import main
if __name__ == '__main__':
    sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0])
    sys.exit(main())

Inserted file not found

Environment

  • Linux kernel 5.4.0
  • Docker python:3.9 image
  • NFD 0.7.1-30-ga103334b, Unix socket mounted into the container at /run/nfd.sock
  • NFD uses multicast strategy for all prefixes
  • ndn-hydra 0.2.2 installed via pip

Steps to reproduce

In first console:

ndnsec key-gen /operator
ndn-hydra-repo -rp /hydra -n $(hostname -s) -s $RANDOM

# only one instance of the repo server is running

In second console:

root@4114cf3a69c4:~# dd if=/dev/urandom of=/tmp/1.bin bs=1M count=1
1+0 records in
1+0 records out
1048576 bytes (1.0 MB, 1.0 MiB) copied, 0.0151957 s, 69.0 MB/s
root@4114cf3a69c4:~# ndn-hydra-client insert -r /hydra -f /1.bin -p /tmp/1.bin
/1.bin/v=3/seg=1
size: 1048576
50d3
Created 128 chunks under name /client/upload/1.bin
/hydra/insert
Client finished Insert Command!
root@4114cf3a69c4:~# echo $?
0
root@4114cf3a69c4:~# ndn-hydra-client query -r /hydra -q /files
No files inserted in the remote repo.
Client finished Query Command!

It's same error as #13, which is not resolved.

session.log

1627092028.484315  INFO      Read handle: listening to /hydra/fetch
1627092028.484622  INFO      Read handle: listening to /hydra/sid/375/fetch
1627092028.484833  INFO      Query handle: listening to /hydra/query
1627092028.485048  INFO      Query handle: listening to /hydra/sid/375/query
1627092028.495219  INFO      SVSync: started svsync
1627092028.495339  INFO      SVSyncCore: started svsync core
1627092028.495466  INFO      SVSyncCore: started listening to /hydra/group
1627092028.495529  INFO      AsyncScheduler: started scheduler for an async function
1627092028.495663  INFO      SVSync: started listening to /375/hydra/group
1627092028.496443  INFO      SVSyncCore: sent sync /hydra/group/201=
1627092048.509736  INFO      SVSync: publishing data /375/hydra/group/epoch-1
1627092048.510464  INFO      Cache save: /375/hydra/group/epoch-1
1627092048.512323  INFO      SVSyncCore: sent sync /hydra/group/201=%CA%04%2F375%CB%01%01
1627092068.594214  INFO      SVSync: publishing data /375/hydra/group/epoch-2
1627092068.595169  INFO      Cache save: /375/hydra/group/epoch-2
1627092068.597750  INFO      SVSyncCore: sent sync /hydra/group/201=%CA%04%2F375%CB%01%02
1627092088.664279  INFO      SVSync: publishing data /375/hydra/group/epoch-3
1627092088.665212  INFO      Cache save: /375/hydra/group/epoch-3
1627092088.667772  INFO      SVSyncCore: sent sync /hydra/group/201=%CA%04%2F375%CB%01%03
1627092108.733728  INFO      SVSync: publishing data /375/hydra/group/epoch-4
1627092108.734316  INFO      Cache save: /375/hydra/group/epoch-4
1627092108.736664  INFO      SVSyncCore: sent sync /hydra/group/201=%CA%04%2F375%CB%01%04
1627092116.579495  INFO      [cmd][QUERY] unknown query received
1627092128.802708  INFO      SVSync: publishing data /375/hydra/group/epoch-5
1627092128.803370  INFO      Cache save: /375/hydra/group/epoch-5
1627092128.805744  INFO      SVSyncCore: sent sync /hydra/group/201=%CA%04%2F375%CB%01%05
1627092148.871224  INFO      SVSync: publishing data /375/hydra/group/epoch-6
1627092148.871774  INFO      Cache save: /375/hydra/group/epoch-6
1627092148.874114  INFO      SVSyncCore: sent sync /hydra/group/201=%CA%04%2F375%CB%01%06
1627092168.941894  INFO      SVSync: publishing data /375/hydra/group/epoch-7
1627092168.942827  INFO      Cache save: /375/hydra/group/epoch-7
1627092168.945057  INFO      SVSyncCore: sent sync /hydra/group/201=%CA%04%2F375%CB%01%07
1627092173.626007  INFO      [cmd][QUERY] query received: files
1627092189.011539  INFO      SVSync: publishing data /375/hydra/group/epoch-8
1627092189.012135  INFO      Cache save: /375/hydra/group/epoch-8
1627092189.014548  INFO      SVSyncCore: sent sync /hydra/group/201=%CA%04%2F375%CB%01%08

Binary logs: ndn-repo-hydra-375.tar.gz

nfdc route

$ docker exec nfd nfdc route
prefix=/21852/hydra/group nexthop=336 origin=app cost=0 flags=child-inherit expires=never
prefix=/hydra/sid/21852/fetch nexthop=336 origin=app cost=0 flags=child-inherit expires=never
prefix=/hydra/sid/21852/query nexthop=336 origin=app cost=0 flags=child-inherit expires=never
prefix=/hydra/fetch nexthop=336 origin=app cost=0 flags=child-inherit expires=never
prefix=/hydra/group nexthop=336 origin=app cost=0 flags=child-inherit expires=never
prefix=/hydra/query nexthop=336 origin=app cost=0 flags=child-inherit expires=never
prefix=/client/msg nexthop=337 origin=app cost=0 flags=child-inherit expires=never
prefix=/client/upload/1.bin nexthop=337 origin=app cost=0 flags=child-inherit expires=never
prefix=/localhost/nfd nexthop=256 origin=app cost=0 flags=child-inherit expires=never

Notably, /hydra/insert prefix does not exist, which means the client cannot actually reach the repo.
There are two problems here:

  • Repo should listen on /hydra/insert prefix to receive insertion commands.
  • Client should exit with a non-zero code if it fails to reach the repo.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.