Changes between Version 10 and Version 11 of GENIEducation/SampleAssignments/CCNAssignment/ForInstructors


Ignore:
Timestamp:
06/04/13 15:39:33 (6 years ago)
Author:
shuang@bbn.com
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • GENIEducation/SampleAssignments/CCNAssignment/ForInstructors

    v10 v11  
    193193  Substitute ''$HOME/ccnx-atmos'' for your actual Atmos build directory, and $''DATAFILE'' for the appropriate filename as described above. [[BR]]
    194194  On the client host you chose, run ''./client.py'' from the data directory and select a few dates from January and February of 1902 for date ranges. Make note of what interests are received at the server, and how long the transfers take. [[BR]]
     195  '''Note:''' You probably need to change the permission of client.py and script.py on the researcher/collaborator nodes to be executable. For unknown reason, sometimes GENI nodes will not configure the ccnd routing table for you. The result is, you are not able to get data from datasources. In this case, run ''ccndstatus'' on ''router'' and any researcher or collaborator node that you are using to confirm the routing table entries are missing, then run the following on node ''router'':
     196{{{
     197ccninitkeystore
     198ccndc add ccnx:/ndn tcp datasource1
     199ccndc add ccnx:/ndn tcp datasource2
     200}}}
     201  Then add the corresponding routing table entries on the researcher/collaborator node you are using. For example, in this case, I am using researcher1, then I should run the following on researcher1:
     202{{{
     203ccninitkeystore
     204ccndc add ccnx:/ndn tcp router
     205}}}
     206  In this example, I am using date range from 1902/01/01 to 1902/01/02. The output from datasource1 is as follows:
     207{{{
     208timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/00
     209Generating the file
     210Generation time66
     211Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/00
     212timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/1
     213Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/1
     214timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/2
     215Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/2
     216timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/3
     217Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/3
     218timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/4
     219Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/4
     220timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/5
     221Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/5
     222timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/6
     223Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/6
     224timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/7
     225Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/7
     226timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/8
     227Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/8
     228timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/9
     229Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/9
     230timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/10
     231Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/10
     232timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/11
     233Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/11
     234timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/12
     235Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/12
     236timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/13
     237Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/13
     238timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/14
     239Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/14
     240timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/15
     241Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/15
     242timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/16
     243Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/16
     244timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/17
     245Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/17
     246timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/18
     247Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/18
     248timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/19
     249Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/19
     250timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/20
     251Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/20
     252timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/21
     253Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/21
     254timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/22
     255Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/22
     256timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/23
     257Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/23
     258timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/24
     259Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/24
     260timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/25
     261Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/25
     262timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/26
     263Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/26
     264timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/27
     265Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/27
     266timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/28
     267Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/28
     268timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/29
     269Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/29
     270timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/30
     271Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/30
     272timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/31
     273Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/31
     274timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/32
     275Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/32
     276timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/33
     277Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/33
     278timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/34
     279Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/34
     280timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/35
     281Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/35
     282timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/36
     283Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/36
     284timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/37
     285Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/37
     286timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/38
     287Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/38
     288timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/39
     289Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/39
     290timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/40
     291Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/40
     292timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/41
     293Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/41
     294timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/42
     295Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/42
     296timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/43
     297Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/43
     298timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/44
     299Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/44
     300timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/45
     301Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/45
     302timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/46
     303Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/46
     304timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/47
     305Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/47
     306timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/48
     307Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/48
     308timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/49
     309Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/49
     310timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/50
     311Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/50
     312timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/51
     313Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/51
     314timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/52
     315Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/52
     316timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/53
     317Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/53
     318timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/54
     319Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/54
     320timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/55
     321Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/55
     322timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/56
     323Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/56
     324timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/57
     325Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/57
     326timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/58
     327Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/58
     328timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/59
     329Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/59
     330timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/60
     331Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/60
     332timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/61
     333Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/61
     334timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/62
     335Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/62
     336timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/63
     337Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/63
     338timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/64
     339Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/64
     340timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/65
     341Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/65
     342timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/66
     343Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/66
     344timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/67
     345Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/67
     346timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/68
     347Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/68
     348timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/69
     349Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/69
     350timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/70
     351Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/70
     352timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/71
     353Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/71
     354timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/72
     355Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/72
     356timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/73
     357Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/73
     358timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/74
     359Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/74
     360timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/75
     361Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/75
     362timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/76
     363Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/76
     364timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/77
     365Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/77
     366timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/78
     367Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/78
     368timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/79
     369Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/79
     370timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/80
     371Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/01/80
     372timestamp 2013-06-04 07:57:35 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/00
     373Sent response
     374timestamp 2013-06-04 07:57:39 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/00
     375Generating the file
     376Generation time54
     377Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/00
     378timestamp 2013-06-04 07:57:39 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/1
     379Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/1
     380timestamp 2013-06-04 07:57:39 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/2
     381Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/2
     382timestamp 2013-06-04 07:57:39 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/3
     383Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/3
     384timestamp 2013-06-04 07:57:39 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/4
     385Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/4
     386timestamp 2013-06-04 07:57:39 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/5
     387Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/5
     388timestamp 2013-06-04 07:57:39 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/6
     389Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/6
     390timestamp 2013-06-04 07:57:39 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/7
     391Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/7
     392timestamp 2013-06-04 07:57:39 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/8
     393Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/8
     394timestamp 2013-06-04 07:57:39 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/9
     395Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/9
     396timestamp 2013-06-04 07:57:39 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/10
     397Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/10
     398timestamp 2013-06-04 07:57:39 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/11
     399Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/11
     400timestamp 2013-06-04 07:57:39 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/12
     401Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/12
     402timestamp 2013-06-04 07:57:39 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/13
     403Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/13
     404timestamp 2013-06-04 07:57:39 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/14
     405Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/14
     406timestamp 2013-06-04 07:57:39 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/15
     407Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/15
     408timestamp 2013-06-04 07:57:39 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/16
     409Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/16
     410timestamp 2013-06-04 07:57:39 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/17
     411Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/17
     412timestamp 2013-06-04 07:57:39 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/18
     413Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/18
     414timestamp 2013-06-04 07:57:39 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/19
     415Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/19
     416timestamp 2013-06-04 07:57:39 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/20
     417Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/20
     418timestamp 2013-06-04 07:57:39 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/21
     419Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/21
     420timestamp 2013-06-04 07:57:39 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/22
     421Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/22
     422timestamp 2013-06-04 07:57:39 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/23
     423Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/23
     424timestamp 2013-06-04 07:57:39 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/24
     425Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/24
     426timestamp 2013-06-04 07:57:39 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/25
     427Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/25
     428timestamp 2013-06-04 07:57:40 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/26
     429Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/26
     430timestamp 2013-06-04 07:57:40 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/27
     431Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/27
     432timestamp 2013-06-04 07:57:40 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/28
     433Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/28
     434timestamp 2013-06-04 07:57:40 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/29
     435Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/29
     436timestamp 2013-06-04 07:57:40 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/30
     437Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/30
     438timestamp 2013-06-04 07:57:40 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/31
     439Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/31
     440timestamp 2013-06-04 07:57:40 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/32
     441Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/32
     442timestamp 2013-06-04 07:57:40 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/33
     443Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/33
     444timestamp 2013-06-04 07:57:40 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/34
     445Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/34
     446timestamp 2013-06-04 07:57:40 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/35
     447Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/35
     448timestamp 2013-06-04 07:57:40 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/36
     449Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/36
     450timestamp 2013-06-04 07:57:40 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/37
     451Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/37
     452timestamp 2013-06-04 07:57:40 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/38
     453Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/38
     454timestamp 2013-06-04 07:57:40 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/39
     455Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/39
     456timestamp 2013-06-04 07:57:40 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/40
     457Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/40
     458timestamp 2013-06-04 07:57:40 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/41
     459Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/41
     460timestamp 2013-06-04 07:57:40 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/42
     461Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/42
     462timestamp 2013-06-04 07:57:40 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/43
     463Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/43
     464timestamp 2013-06-04 07:57:40 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/44
     465Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/44
     466timestamp 2013-06-04 07:57:40 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/45
     467Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/45
     468timestamp 2013-06-04 07:57:40 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/46
     469Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/46
     470timestamp 2013-06-04 07:57:40 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/47
     471Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/47
     472timestamp 2013-06-04 07:57:40 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/48
     473Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/48
     474timestamp 2013-06-04 07:57:40 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/49
     475Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/49
     476timestamp 2013-06-04 07:57:40 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/50
     477Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/50
     478timestamp 2013-06-04 07:57:40 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/51
     479Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/51
     480timestamp 2013-06-04 07:57:40 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/52
     481Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/52
     482timestamp 2013-06-04 07:57:40 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/53
     483Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/53
     484timestamp 2013-06-04 07:57:40 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/54
     485Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/54
     486timestamp 2013-06-04 07:57:40 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/55
     487Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/55
     488timestamp 2013-06-04 07:57:40 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/56
     489Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/56
     490timestamp 2013-06-04 07:57:40 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/57
     491Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/57
     492timestamp 2013-06-04 07:57:40 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/58
     493Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/58
     494timestamp 2013-06-04 07:57:40 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/59
     495Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/59
     496timestamp 2013-06-04 07:57:40 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/60
     497Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/60
     498timestamp 2013-06-04 07:57:40 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/61
     499Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/61
     500timestamp 2013-06-04 07:57:40 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/62
     501Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/62
     502timestamp 2013-06-04 07:57:40 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/63
     503Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/63
     504timestamp 2013-06-04 07:57:40 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/64
     505Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/64
     506timestamp 2013-06-04 07:57:40 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/65
     507Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/65
     508timestamp 2013-06-04 07:57:40 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/66
     509Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/66
     510timestamp 2013-06-04 07:57:40 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/67
     511Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/67
     512timestamp 2013-06-04 07:57:40 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/68
     513Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/68
     514timestamp 2013-06-04 07:57:40 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/69
     515Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/69
     516timestamp 2013-06-04 07:57:40 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/70
     517Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/70
     518timestamp 2013-06-04 07:57:40 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/71
     519Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/71
     520timestamp 2013-06-04 07:57:40 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/72
     521Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/72
     522timestamp 2013-06-04 07:57:40 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/73
     523Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/73
     524timestamp 2013-06-04 07:57:40 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/74
     525Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/74
     526timestamp 2013-06-04 07:57:40 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/75
     527Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/75
     528timestamp 2013-06-04 07:57:40 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/76
     529Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/76
     530timestamp 2013-06-04 07:57:40 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/77
     531Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/77
     532timestamp 2013-06-04 07:57:40 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/78
     533Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/78
     534timestamp 2013-06-04 07:57:40 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/79
     535Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/79
     536timestamp 2013-06-04 07:57:40 uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/80
     537Returning data for uri = ccnx:/ndn/colostate.edu/netsec/pr_1902/01/02/80
     538}}}
     539
     540
    195541  Change the client and server programs to use this URI, restricting CCNx transfers to a granularity of one month, but preserving the ability of users to retrieve at one day granularity: ''/ndn/colostate.edu/netsec/pr_<year>/<month>''[[BR]]
    196542  '''Implementation Hints:''' It is important understand how ''script.py'' uses NetCDF commands to extract relevant dimensions in the data files. The client (''client.py'') breaks up a user’s request into a collection of URIs (one for each day) and fetches them sequentially. For each URI, script.py generates a list of timestamps (a floating point number indicating the number of days elapsed since January 1, 1901). From the NetCDF data files, script.py extracts the fields that lie within these timestamps. The server side changes are minimal. Once a month’s granularity of data is received at the client side, it should be filtered to match the specific days requested by the user. [[BR]]
    197543  Retrieve a variety of dates in the January to February 1902 date range, and note again what interests are received at the server and how long the transfers take. [[BR]]
     544  '''Code Answer: ''' Source code can be found here: [http://www.gpolab.bbn.com/experiment-support/CCNExampleExperiment/forInstructors/ SourceCodeAnswers].[[BR]]
     545  '''Change Log: '''
     546    - client.py: modify the granularity of requested data from one day to one month; fetch the data via `client`, then look into the fetched file and extract data corresponding to the requested time rage -- most of the changes happen in this file
     547    - client.c: no change
     548    - server.c: a little change: since the trunk_interest_name does not include `day` information (the client only send out `/ndn/colostate.edu/netsec/pr_1902/01` instead of `/ndn/colostate.edu/netsec/pr_1902/01/08`), I added a default starting day 01 for every request/interest, change can be found from line 231 to line 233.
     549    - script.py: fetches data for a whole month instead of one day. [[BR]]
    198550   - '''Question 2.1 A''' [[BR]]
    199    What general difference do you see in network behavior between these solutions?
     551   What general difference do you see in network behavior between these solutions? [[BR]]
     552   '''Answer: ''' Apparently at granularity of month, the amount of data transferred is larger (about 20 Mega Bytes per month), compared with granularity of day (about 660 Kilo Bytes per day). [[BR]]
     553   Moreover, at month-granularity, the size of file transferred is big so as to give TCP enough time to accelerate its throughput while at day-granularity it is not the case. [[BR]]
    200554   - '''Question 2.1 B''' [[BR]]
    201555   Which URI scheme is more efficient in time and network resources if the user only wants a few days of data? What if the user wants a full calendar month of data? [[BR]]
     556   '''Answer''': If the user only wants a few days of data, day-granularity is better: it consumes less network resources (bandwidth) and takes less time to fetch. If the user wants a full calendar month of data, it is better to use month-granularity since in this case, one request from the client side is enough, compared with around 30 (number of days in a month) consecutive requests from client side (which takes longer to query) if using day-granularity.
    202557
    203558 - '''3.3 Exploring the Impact of Caching''' -- Files to download: [http://www.gpolab.bbn.com/experiment-support/CCNExampleExperiment/cache.rspec cache.rspec]  [[BR]]