CIS 656, Dr Ott, Spring 2005, Network Description. Network Description, ``project B''. Composition of teams is due 03/12/2005 or soon after. ``Project B'' is due 04/09/2005 Maximum teamsize = 2, Minimum = 1. Recommended size is 2. This is a hypothetical private network inside NJIT, with a private address space, connected through a NAT Router (Network Address Translation) to the rest of the NJIT network, and thus to the rest of the Internet. A drawing of this network now is on Dr Ott's web page. (Twice: as .ps file and as .pdf file.) For a computer (router) the drawing is not necessary: all relevant information is given below. But the drawing makes life easier for us humans! There are 10 Routers inside the private network (R1, ... , R10), plus a NAT router which has 1 interface inside the private network and 1 interface outdside the private network. There are 13 subnetworks inside the private network (I, ... , XIII). The NAT router is outside the private network. Network IV is the boundary and has only two interfaces on it: it is a ``point to point link'', see Forouzan page 405. This is irrellevant to the project. Network addresses and MTUs: Netw address MTU I 10.1.0.0/24 576 II 10.2.0.0/20 65535 III 10.2.32.0/20 65535 IV 10.2.64.0/20 65535 V 10.3.0.0/24 1500 VI 10.3.1.0/24 4352 VII 10.3.2.0/24 1500 VIII 10.4.0.0/22 4464 IX 10.4.8.0/22 17914 X 10.4.16.0/22 4464 XI 10.4.24.0/22 4352 XII 10.4.0.0/24 1500 XIII 10.10.1.0/24 1500 Interfaces: R1: A1 to I, A2 to II, A3 to IX, A4 to VIII, A5 to VI, A6 to V. R2: A7 to II, A8 to III. R3: A9 to III, A10 to IV. NAT: A11 to IV. R4: A12 to V, A14 to VII. R5: A13 to VI, A15 to VII. R6: A16 to IX, A17 to X. R7: A18 to X, A19 to II, A20 to XII. R8: A21 to XII, A22 to XI. R9: A23 to XI, A24 to VIII. R10: A25 to VIII, A26 to XIII. Addresses of the interfaces: A1: 10.1.0.1 A2: 10.2.0.1 A3: 10.4.8.1 A4: 10.4.1.1 A5: 10.3.1.1 A6: 10.3.0.1 A7: 10.2.9.0 A8: 10.2.32.1 A9: 10.2.41.0 A10: 10.2.64.1 A11: 10.2.75.0 A12: 10.3.0.17 A13: 10.3.1.18 A14: 10.3.2.1 A15: 10.3.2.19 A16: 10.4.9.2 A17: 10.4.16.1 A18: 10.4.18.2 A19: 10.2.10.1 A20: 10.4.0.1 A21: 10.4.0.128 A22: 10.4.25.2 A23: 10.4.24.1 A24: 10.4.2.2 A25: 10.4.3.3 A26: 10.10.1.1 Students: Please check whether I made an error in assigning addresses to interfaces. (I tried not to.) An address must be in the address space of the network it is on! Please note: there is a pair of networks where you have to worry about ``longest fit''. Routing is ``min-hop'': Routers always try to route in such a way that the number of intermediate routers is minimized. For router R1 there are two ties: From R1 to VII it is equal length over R4 or R5. From R1 to VII: route over R5. (R1 - VI - R5 - VII). From R1 to X it is equal length over R6 or R7. From R1 to X: route over R6. (R1 - IX - R6 - X). Students: please check whether there are other ties for R1. We do not care about ties for other routers. (There are ties from R7 to VIII and from R7 to XIII. Also from R6 to II, III, IV. We do not care.) Router R3 is the ``most intelligent'' of all routers in the network. All routers but R3: a packet with a destination address in one of the 13 networks is routed toward that network. All routers, but R3, have a default route ``toward'' R3. (R1: out of A2 to A7 on R2.) R3: All packets with a destination address in one of the 13 networks is routed ``toward'' that network. All packets with a legal destination address outside 10.0.0.0/8 are forwarded out of A10 to A11 on the NAT router. All other packets are ``dropped on the floor'' ands if appropriate an ICMP error message is sent. When one of these routers has a packet with a legal destination address in an adjacent network (for example: R1 for an address in I) you assume there really is an interface with that address, and you do direct delivery. The NAT router uses ``state information'' to do address translation. Not your concern in this project. You will construct routing tables (No! Forwarding Tables!) for R1 and for R3. (Not for any of the other routers). You will incorporate these routing tables in a program that for every packet as in the example input determines what router is the recipient, and if that router is either R1 or R3 determines what the router does with the packet, as in the example output. --- A drawing of the network now is on my website. There are a short test input file and corresponding test output file on my website. Longer input- and output files will be added shortly. Try to get your output identical to my input.