-
Notifications
You must be signed in to change notification settings - Fork 0
/
marking-scheme.txt
128 lines (61 loc) · 3.12 KB
/
marking-scheme.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
Total before late penalty: [65.5/78]
***Total after 100.0% late penalty is 0.0
[15/15] milestone
[5/5] encode
[10/10] decode
Note: the milestone grading is effort based, we assign either full marks, half marks or zero.
General Functionality: [31.5/40]
[2/2] Basic query to a name server that is authoritative.
(e.g.lookup www.cs.ubc.ca using 142.103.6.6)
[5/5] Basic Query that starts at root server and works to an
authoritative server in a straightforward path.
(e.g. www.cs.ubc.ca to a root name server)
[5/5] A basic type query that results in a CNAME and the need to
restart the search for the alias. (e.g. prep.ai.mit.edu)
[3/3] A query that returns a name server to use where the name
server's address isn't provided. (e.g. www.stanford.edu)
[3/3] A complicated lookup series that potentially involves multiple CNAMEs
and NS lookups (finance.google.ca)
[2/3] Can deal with information in the additional information
section when not all of it is of interest/use
(e.g. groups.yahoo.com)
-1 You are missing one of the answer
[2/3] Can deal with unconventional but valid response records
(e.g. uncompressed RR names, compression of the query name).
-1 same as above
[3/3] Adds all resource records in the additional section to the cache (test
by lookup up by having tracing on and looking up prep.ai.mit.edu
and then lookup ftp.gnu.org - shouldn't have to do the lookup again)
[2/2] Uses cached data when available (for a regular query).
[0/3] Uses cached data when available (for a CNAME query).
Your program started a new query but not return the result from the cache.
[2/2] The TTL reported is the last TTL from the A (or AAAA) record when a CNAME is involved.
[0/2] Uses IPv4 nameserver even when IPv6 request is done.
[2/2] If a query returns more than IP address all IP addresses are printed.
[0.5/2] Is able to properly request and parse A, AAAA, NS and CNAME records.
Failed to handle AAAA/NS/CNAME for some of the testcases
Error Handling: [4/8]
[0/2] Timeout - nameserver doesn't respond (no exceptions should be thrown)
no output...
[0/2] Too many queries (process should NOT be killed by the script
/usr/bin/timeout e.g. lookup of www.louvre.com should terminate with a
failure as opposed to going on for ever.)
no Maximum number of indirection levels reached output
[2/2] Name does not resolve (e.g. wee.cs.ubc.ca)
[2/2] Other types of errors (e.g. .ca)
Tracing: [9/9]
[1/1] Prints query ID, server being queried and FQDN
[1/1] Query ID is different for every query during a run
[1/1] Prints Response ID line, with query ID and whether or not this
is an authoritative response
[1/1] Prints the counts for the Answers, Nameservers, and Additional
Information fields.
[1/1] Prints A in proper format
[1/1] Prints AAAA in proper format
[1/1] Prints CNAMES in proper format
[1/1] Prints NS in proper format
[1/1] Prints type number if not in above
Broad Marking Criteria: [6/6]
[/3] Readability and quality
[/3] Code Documentation
MARKER'S ADDITIONAL COMMENTS: