ECE 4110 – Internetwork Programming TCP/IP Protocol (cont’d)
Spring 2003 Tuna Tugcu ECE 4110 – Internetwork Programming 2 DIX Ethernet Data Frame Format Preamble: Alternating 0’s and 1’s with last bit a l. Destination medium access control (MAC) address: Each receiver DL layer compares this to its own hardwired network interface card (NIC) address. Normally a NIC knows its own address and the broadcast address. Source MAC address: Sender’s NIC address. Type: Type of data transporting. E.g.: Internet Protocol. Cyclic Redundancy Check: Used for checking data integrity. Gap: After the Ethernet Frame, a 12 Byte Interframe Gap must always follow. Note: Receiver DL layer does not look at data. Note: Data is in most network technologies called a “packet.” Preamble (8 Bytes) Destination MAC Address (6 Bytes) Source MAC Address (6 Bytes) Type (2 Bytes) Data CRC (4 Bytes) Gap 12 Bytes
Spring 2003 Tuna Tugcu ECE 4110 – Internetwork Programming 3 Computer X on Network wants to send a message to Computer Y on Network. 1 Routing Concepts A4 Computer X Computer Y F E D C B A1 A A2 1 Network Number (Address) Router Network 1 A3
Spring 2003 Tuna Tugcu ECE 4110 – Internetwork Programming 4 Destination 5 : Y Source 1 : X Other Stuff Data IEEE Frame Preamble Destination MAC Address Source MAC address Length DATA CRC Routing Concepts (cont’d) Network address is software configurable.
Spring 2003 Tuna Tugcu ECE 4110 – Internetwork Programming 5 Routing Service Connection-oriented Connectionless Delivery Direct Delivery Indirect delivery
Spring 2003 Tuna Tugcu ECE 4110 – Internetwork Programming 6 Connection-Oriented vs. Connectionless In connection-oriented services, the network layer protocol first makes a connection. In connectionless services, each packet is treated independently. So, there is no relationship between the packets.
Spring 2003 Tuna Tugcu ECE 4110 – Internetwork Programming 7 * From TCP/IP Protocol Suite, B. A. Forouzan, Prentice Hall Direct Delivery Source and the destination are on the same physical network. Address mapping is between IP and physical address of the final destination. Physical address of the destination is found via ARP.
Spring 2003 Tuna Tugcu ECE 4110 – Internetwork Programming 8 * From TCP/IP Protocol Suite, B. A. Forouzan, Prentice Hall Indirect Delivery Source and destination are on different networks. Address mapping is between IP and physical address of the next hop.
Spring 2003 Tuna Tugcu ECE 4110 – Internetwork Programming 9 Routing Methods Next-hop routing Network-specific routing Host-specific routing Default routing
Spring 2003 Tuna Tugcu ECE 4110 – Internetwork Programming 10 * From TCP/IP Protocol Suite, B. A. Forouzan, Prentice Hall Next-Hop Routing
Spring 2003 Tuna Tugcu ECE 4110 – Internetwork Programming 11 * From TCP/IP Protocol Suite, B. A. Forouzan, Prentice Hall Network-Specific Routing
Spring 2003 Tuna Tugcu ECE 4110 – Internetwork Programming 12 Host-Specific Routing * From TCP/IP Protocol Suite, B. A. Forouzan, Prentice Hall
Spring 2003 Tuna Tugcu ECE 4110 – Internetwork Programming 13 Default Routing * From TCP/IP Protocol Suite, B. A. Forouzan, Prentice Hall
Spring 2003 Tuna Tugcu ECE 4110 – Internetwork Programming 14 Static vs. Dynamic Routing In static routing, routing table is constructed manually. In dynamic routing, routing table is constructed automatically using protocols like RIP, OSPF, or BGP.
Spring 2003 Tuna Tugcu ECE 4110 – Internetwork Programming 15 Routing Table Flags UThe router is up and running. GThe destination is a gateway (indirect delivery). HHost-specific address. DAdded by redirection (by ICMP). MModified by redirection (by ICMP).
Spring 2003 Tuna Tugcu ECE 4110 – Internetwork Programming 16 Routing Module * From TCP/IP Protocol Suite, B. A. Forouzan, Prentice Hall
Spring 2003 Tuna Tugcu ECE 4110 – Internetwork Programming 17 Routing Module (cont’d) Search for route in this order: Direct delivery Host-specific delivery Network-specific delivery Default delivery
Spring 2003 Tuna Tugcu ECE 4110 – Internetwork Programming 18 Routing Module (algorithm) For each entry in RT: Apply the mask to destination address If result of mask matches the destination field in the entry in RT, find next-hop address as follows: If G flag is set Use next-hop field in RT Else Use destination address in the packet (direct delivery) Send packet to fragmentation module with the next-hop address Stop Else, send ICMP error message Stop
19 * From TCP/IP Protocol Suite, B. A. Forouzan, Prentice Hall Example Topology
Spring 2003 Tuna Tugcu ECE 4110 – Internetwork Programming 20 Routing Table for R1 MaskDestinationNext HopInterface m m m m m m m0
Spring 2003 Tuna Tugcu ECE 4110 – Internetwork Programming 21 Example 1 Router R1 receives 500 packets for destination ; the algorithm applies the masks row by row to the destination address until a match (with the value in the second column) is found.
Spring 2003 Tuna Tugcu ECE 4110 – Internetwork Programming 22 Example 1 (Solution) Direct delivery & no match & no match Host-specific & no match Network-specific & match
Spring 2003 Tuna Tugcu ECE 4110 – Internetwork Programming 23 Example 2 Router R1 receives 100 packets for destination ; the algorithm applies the masks row by row to the destination address until a match is found.
Spring 2003 Tuna Tugcu ECE 4110 – Internetwork Programming 24 Example 2 (Solution) Direct delivery & no match & match
Spring 2003 Tuna Tugcu ECE 4110 – Internetwork Programming 25 Example 3 Router R1 receives 20 packets for destination ; the algorithm applies the masks row by row to the destination address until a match is found.
Spring 2003 Tuna Tugcu ECE 4110 – Internetwork Programming 26 Example 3 (Solution) Direct delivery & no match & no match Host-specific & no match Network-specific & no match Default & match
Spring 2003 Tuna Tugcu ECE 4110 – Internetwork Programming 27 Example 4 Make the routing table for router R1
Spring 2003 Tuna Tugcu ECE 4110 – Internetwork Programming 28 MaskDestinationNext HopInterface m m m m0 Example 4 (Solution)
Spring 2003 Tuna Tugcu ECE 4110 – Internetwork Programming 29 Example 5 Make the routing table for router R1
Spring 2003 Tuna Tugcu ECE 4110 – Internetwork Programming 30 MaskDestinationNext HopInterface m m1 or or m m1 or or m ???????????? m0 Example 5 (Solution)
Spring 2003 Tuna Tugcu ECE 4110 – Internetwork Programming 31 Example 6 Given the routing table in the next slide, draw the topology.
Spring 2003 Tuna Tugcu ECE 4110 – Internetwork Programming 32 MaskDestinationNext HopInterface m m m m m m0 Example 6 (cont’d)
Spring 2003 Tuna Tugcu ECE 4110 – Internetwork Programming 33 Example 6 (Solution)