Computer Science 881 Quiz 1 Name_______________________ 1. The IP networking subsystem in Linux is implemented using a layered architecture that consists of seven layers. For which TWO of the seven layers is a common implementation used by all protocol families and all physical layers ___ socket ___ network ___ generic device ___ PF/AF ___ transport ___ specific device class (eth) ___ device driver 2. What data structures MUST be created and what functions must be called to <> a new IP <>. Be sure to provide the proper name of the structure and not a specific instance: (e.g. for struct foo bar -- the answer should be struct foo and NOT bar). NOTE: some structures contain pointers to additional structures ... thus Name of Function Called may be repeated. Name of Structure Name of Function Called 2. What is the name of the structure used to: a. convey the address receive entry point of a transport protocol to the IP layer? b. convey the sending entry point of the transport protocol to the AF_ layer c. convey the sending entry point of the AF_ protocol protocol to the socket layer. 3. A single entry in the Linux routing table best corresponds to a. An element of type b. An element of type struct struct rtable dst_entry b. An element of type struct fib_node 4. The struct packet_type is used in binding a. network layer to transport b. af_inet to socket c. af_inet to transport d. network to dev 5. During a route cache lookup a. Only one rt_hash_bucket[] will b. It may be necessary to search ever need be be searched several buckets or one may suffice c. All buckets must always be searched 6. During a FIB table lookup a. Only one fn_zone will b. It may be necessary to search ever need be be searched several zones or one may suffice c. All zones must always be searched 7. The IP address of the next hop of a route is kept in which of the following structures: a. fib_nh b. fib_node c. fn_zone 8. Suppose a system has 512MB of real memory. How many entries will the routing cache hash table contain? 9. When a route must be resolved, a. the FIB is searched first and a. the route cache is searched first if the route can't be resolved and if the route can't be resolved there, the route cache is searched there, the FIB is searched c. both the FIB and the route cache must always be processed. 10. Suppose the statement module_init(call_init); appears in code compiled as part of a kernel build (NOT an installable module). Which of the following will be generated by the macro? ___ a. _initcall_inet_init __init_call = inet_init ___ b. _initcall_call_init __init_call = call_init ___ c. _initcall_init_call __call_init = init_call ___ d. _initcall_call_init __call_init = init_call