[Ndn-interest] download a file using PyNDN

Ishita Dasgupta ishita.dasgupta at gmail.com
Fri May 26 11:35:20 PDT 2017


So, just so that I understand this correctly: " %FDY%28Q8 " is the version
component of the all data packet segments representing the file. And then
the Segment Fetcher program sequentially downloads the segments
individually (and I don't need to worry about the segment numbers?)

Regards,
Ishita Dasgupta

*Graduate Student**College of Information and Computer Sciences*
*,UMass Amherst*
*Email*: ishitadg at cs.umass.edu

On Fri, May 26, 2017 at 2:31 PM, Thompson, Jeff <jefft0 at remap.ucla.edu>
wrote:

> Please try the following: Don’t add the line to set the exclude filter,
> and change the name to include the version number (without “%C1.FS.file”):
>
> name3 = Name("/ndn/broadcast/ndnfs/BigBuckBunny_4s_simple_2014_05_
> 09.mpd/%FDY%28Q8”)
>
> The reason is that the segment component comes after the version component
> “/%FDY%28Q8”.
>
> - Jeff T
>
> From: Ishita Dasgupta <ishita.dasgupta at gmail.com>
> Date: Friday, May 26, 2017 at 11:22:00
>
> To: Jeff Thompson <jefft0 at remap.ucla.edu>
> Cc: "ndn-interest at lists.cs.ucla.edu" <ndn-interest at lists.cs.ucla.edu>
> Subject: Re: [Ndn-interest] download a file using PyNDN
>
> Hi Jeff,
>
> Now it would not return any Data packet at all.
> At consumer(ndndump):
>
>> 1495818158.862071 From: 192.1.242.150, To: 192.1.242.151, Tunnel Type:
>> TCP, INTEREST: /ndn/broadcast/ndnfs/BigBuckBunny_4s_simple_2014_
>> 05_09.mpd?ndn.ChildSelector=1&ndn.MustBeFresh=1&ndn.
>> InterestLifetime=1000&ndn.Nonce=1259570516&ndn.Exclude=%C1.FS.file
>
> <NO DATA PACKET IN RESPONSE>
>
>
> Regards,
> Ishita Dasgupta
>
> *Graduate Student **College of Information and Computer Sciences*
> *, UMass Amherst*
> *Email*: ishitadg at cs.umass.edu
>
> On Fri, May 26, 2017 at 12:54 PM, Thompson, Jeff <jefft0 at remap.ucla.edu>
> wrote:
>
>> After
>>
>> interest = Interest(name3)
>>
>> try adding
>>
>> interest.getExclude().appendComponent(Name("%C1.FS.file")[0])
>>
>> This is because NDNFS not only serves the Data packet segments of the
>> file, but a “meta info” packet where the name has the component
>> “"%C1.FS.file”. The code above should exclude it.
>>
>> Let us know,
>> - Jeff T
>>
>> From: Ishita Dasgupta <ishita.dasgupta at gmail.com>
>> Date: Friday, May 26, 2017 at 9:38:00
>> To: Jeff Thompson <jefft0 at remap.ucla.edu>
>> Cc: "ndn-interest at lists.cs.ucla.edu" <ndn-interest at lists.cs.ucla.edu>
>>
>> Subject: Re: [Ndn-interest] download a file using PyNDN
>>
>> Hi Jeff,
>>
>> I have a file test.txt being served on my ndnfs server. Prefix:
>> /ndn/broadcast/ndnfs
>> I implement SegmentFetcher in the following way and print content and
>> error message
>>
>>  name3 = Name(url)
>>>  dump("Express name ", name3.toUri())
>>>  interest = Interest(name3)
>>>  dump(interest.toUri())
>>>  interest.setInterestLifetimeMilliseconds(1000)
>>> SegmentFetcher.fetch(face, interest, None, counter.onComplete,
>>> counter.onError)
>>
>>
>> This is what i get:
>>
>>> /ndn/broadcast/ndnfs/BigBuckBunny_4s_simple_2014_05_09.mpd?
>>> ndn.MustBeFresh=true
>>> onError
>>> 2
>>> Got an unexpected packet without a segment number:
>>> /ndn/broadcast/ndnfs/BigBuckBunny_4s_simple_2014_05_09.mpd/%
>>> C1.FS.file/%FDY%28Q8
>>
>>
>> When I do an ndndump on the consumer, I see:
>>
>>> 1495816236.074843 From: 192.1.242.150, To: 192.1.242.151, Tunnel Type:
>>> TCP, INTEREST: /ndn/broadcast/ndnfs/BigBuckBu
>>> nny_4s_simple_2014_05_09.mpd?ndn.ChildSelector=1&ndn.
>>> MustBeFresh=1&ndn.InterestLifetime=1000&ndn.Nonce=3797640908
>>
>>
>>
>> 1495816236.085709 From: 192.1.242.151, To: 192.1.242.150, Tunnel Type:
>>> TCP, DATA: /ndn/broadcast/ndnfs/BigBuckBunny_4s_simple_2014_05_09.mpd/%
>>> C1.FS.file/%FDY%28Q8
>>
>>
>> I thought fetching segment number was internally done in your Segment
>> Fetcher util. Do I need to implement it some way on my end as well?
>>
>> Regards,
>> Ishita Dasgupta
>>
>> *Graduate Student **College of Information and Computer Sciences*
>> *, UMass Amherst*
>> *Email*: ishitadg at cs.umass.edu
>>
>> On Thu, May 25, 2017 at 2:15 PM, Thompson, Jeff <jefft0 at remap.ucla.edu>
>> wrote:
>>
>>> Hi Ishita,
>>>
>>> We have NDNFS producing sample data at memoria.ndn.ucla.edu. The PyNDN
>>> code below uses the SegmentFetcher to fetch the segments of a file (a
>>> JavaScript file). NDNFS has split the file into 12 segments, which
>>> SegmentFetcher retrieves to supply the content to the callback.
>>> SegmentFetcher documentation is here:
>>> https://github.com/named-data/PyNDN2/blob/master/python/pynd
>>> n/util/segment_fetcher.py#L142
>>>
>>> - Jeff T
>>>
>>> import time, sys
>>> from pyndn import Name, Interest, Face
>>> from pyndn.util import SegmentFetcher
>>>
>>> face = Face("memoria.ndn.ucla.edu")
>>> SegmentFetcher.fetch(face, Interest(Name(
>>>   "/ndn/edu/ucla/remap/demo/ndn-js-test/named-data.net/wp-incl
>>> udes/js/jquery/jquery.js/%FDX%DC5B")),
>>>   None, lambda content: sys.stdout.write(content.toRawStr()),
>>>   lambda errorCode, message: sys.stdout.write("Got error " + message))
>>>
>>> while True:
>>>     face.processEvents()
>>>     time.sleep(0.01)
>>>
>>>
>>> From: Ishita Dasgupta <ishita.dasgupta at gmail.com>
>>> Date: Thursday, May 25, 2017 at 6:00:00
>>> To: Jeff Thompson <jefft0 at remap.ucla.edu>, "
>>> ndn-interest at lists.cs.ucla.edu" <ndn-interest at lists.cs.ucla.edu>
>>> Subject: Re: [Ndn-interest] download a file using PyNDN
>>>
>>> Hi Jeff,
>>>
>>> Yes
>>> ​, the producer is responding to Interests with Data packets
>>> representing the file. I run NDNFS on the producer.
>>>>>>
>>> On Wed, May 24, 2017 at 4:35 PM Thompson, Jeff <jefft0 at remap.ucla.edu>
>>> wrote:
>>>
>>>> Hi Ishta,
>>>>
>>>> In NDN, there is a producer and consumer. The consumer sends an
>>>> Interest and the producer (or a cache in the network) responds with a Data
>>>> packet. When you say “an entire file from an NDN server” I assume you mean
>>>> a producer that is responding to Interests with Data packets representing
>>>> the file. What producer software is running on the server?
>>>>
>>>> - Jeff T
>>>>
>>>> From: Ndn-interest <ndn-interest-bounces at lists.cs.ucla.edu> on behalf
>>>> of Ishita Dasgupta <ishita.dasgupta at gmail.com>
>>>> Date: Wednesday, May 24, 2017 at 8:29:00
>>>> To: "ndn-interest at lists.cs.ucla.edu" <ndn-interest at lists.cs.ucla.edu>
>>>> Subject: [Ndn-interest] download a file using PyNDN
>>>>
>>>> Hi All,
>>>>
>>>> Has anybody used PyNDN to download an entire file from an ndn server?
>>>> I see or receive jibberish data in form of one data packet but don't
>>>> seem to copying the exact content of the file(no matter the size, i.e
>>>> irrespective of the fact that the file gets divided to multiple segments or
>>>> just one segment).
>>>> Any guidance with this would be helpful.
>>>>
>>>> Thanks,
>>>> Ishita
>>>>
>>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.lists.cs.ucla.edu/pipermail/ndn-interest/attachments/20170526/63bfa802/attachment-0001.html>


More information about the Ndn-interest mailing list