justincpresley / ndn-hydra

ndn-hydra: A Python-coded NDN distributed repository with five focused attributes: resiliency, scalability, usability, efficiency, and security.
Apache License 2.0
3 stars 7 forks source link

Repo Serves Clients + Client App Redone #4

Closed justincpresley closed 3 years ago

justincpresley commented 3 years ago

This Pull accomplishes two tasks:

This Pull DOES NOT accomplish client file fetching. This is in the process of being done, and only sets up how the repo will respond.

New Client Functionality:

All functions (dump, insert, delete, fetch) are done by doing:

Some of these (in fact all of them) have their own arguments (indicated by a -letter) that you need to fulfill for example:

If you run the client application, it will tell you this entire process. The application will correct you.

New Repo Functionality:

The repo will respond with either a NACK, BLOB, or LINK data packet. The first two self-explanatory, the latter being the correct prefix to go to (does not include segmenting). For example if the client wants /drepo/main/file1/seg=0, then the link will provide /drepo/id/node5/file1 for example. The Client is responsible getting what packets it needs.

While the Repo can not be tested yet. The New Client should be tested before pushing it to main.

ZixuanZhong commented 3 years ago

you should use global_view_2 instead of global_view everywhere. Plz change that in ndn_distributed_repo/handle_protocol/read_handle.py, thx!

justincpresley commented 3 years ago

I sorted out the database problems. No problems on my end with merging now.