1 recitation 6 midterm 1’s solution project 2 ip forwarding cidr

15
1 Recitation 6 • Midterm 1’s solution • Project 2 • IP Forwarding • CIDR

Upload: alec-herald

Post on 14-Dec-2015

218 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: 1 Recitation 6 Midterm 1’s solution Project 2 IP Forwarding CIDR

1

Recitation 6

• Midterm 1’s solution

• Project 2

• IP Forwarding

• CIDR

Page 2: 1 Recitation 6 Midterm 1’s solution Project 2 IP Forwarding CIDR

Project 2

• Environment– 1 tracker, 2 seeds and 2 leeches

• Expand your project 1– Download from multiple peers.– Be able to upload.– Be able to accept incoming connections.– Connect to 2 leeches and upload your

available pieces to leeches.

2

Page 3: 1 Recitation 6 Midterm 1’s solution Project 2 IP Forwarding CIDR

Protocol• State machine:

– am_choking: this client is choking the peer – am_interested: this client is interested in the peer – peer_choking: peer is choking this client – peer_interested: peer is interested in this client

• bitfield: <len=0001+X><id=5><bitfield> SEND+RECV• keep-alive: <length prefix> is 0• choke: <len=0001><id=0>• unchoke: <len=0001><id=1>• interested: <len=0001><id=2>• not interested: <len=0001><id=3>• have: <len=0005><id=4><piece index>• request: <len=0013><id=6><index><begin><length> SEND+RECV• piece: <len=0009+X><id=7><index><begin><block> SEND+RECV

3

Page 4: 1 Recitation 6 Midterm 1’s solution Project 2 IP Forwarding CIDR

Notes

• After handshake, seeds should send the bitfield with “all of bit 1s”. Leeches may not send “bitfields” or bitfield with “all of bit 0s”

• After downloading & verifying a piece, your program should advertise the piece by sending a “have” to peers. Don’t send a “have” to peers having it already.

4

Page 5: 1 Recitation 6 Midterm 1’s solution Project 2 IP Forwarding CIDR

5

Sample Question: Subnetting

Consider a conventional class B network. A network administrator decides to give all subnets in the class B network a sub-net mask of 255.255.248.0.

(5 points) How many sub-nets can the administrator use if all sub-nets use this mask?

(5 points) How many hosts are possible on each sub-net?

(5 points) The administrator just heard that she only needs 16 sub-nets for the class B address. What sub-net mask maximizes the number of hosts on each sub-net?

Page 6: 1 Recitation 6 Midterm 1’s solution Project 2 IP Forwarding CIDR

6

ARP (from IP add. to MAC add.)• Application doesn’t know MAC address !!!

– Application works with IP address:ssh 128.6.171.162 (ssh cereal.rutgers.edu)

ping 192.168.1.1

• Recall: Ethernet Frame Structure

• “A” knows IP X of “C”, how can A send an ethernet frame to C? How does A know MAC of C??

HUB

BA C D

Send broadcast

MAC A -> FF: …FF, Type=ARP Who has IP X ????

MAC C -> MAC A, type=ARP Hey guy, I have IP X !!!

MAC A-> MAC C, type=IP IP packet

MAC Dest. address MAC Source address

Type DATA …. CRC

Page 7: 1 Recitation 6 Midterm 1’s solution Project 2 IP Forwarding CIDR

7

Multi-Hop Forwarding Example

N2N2 N3N3

X sends an IP packet to Y??X sends an IP packet to Y??

N1N1R1 R2

x Y

1.X-> R1a

a ab b

1. X sends to its gateway (IP of R1a)

MAC X -> MAC R1a IP X -> IP Y DATA

2. R1 forwards the packet to R2

MAC R1b -> MAC R2a IP X -> IP Y DATA

3. R2 forwards the packet to Y

MAC R2b -> MAC Y IP X -> IP Y DATA

2. R1b->R2a 3. R2b->Y

Page 8: 1 Recitation 6 Midterm 1’s solution Project 2 IP Forwarding CIDR

8

Multi-Hop Forwarding Example

N2N2 N3N3 N4N4

Actual routing table contains IP addresses, Flags Actual routing table contains IP addresses, Flags indicating type of entries, net mask etc. indicating type of entries, net mask etc.

Routing table @ R2Routing table @ R2

N1N1

R1 R2 R3

N1N2N3N4

R1Deliver directly (ARP)Deliver directly (ARP)R3

Dest Next hop

Page 9: 1 Recitation 6 Midterm 1’s solution Project 2 IP Forwarding CIDR

9

IP forwardingROUTING TABLE AT A ROUTER:Destination Gateway Genmask Flags Metric Ref Use Iface128.6.5.0 A 255.255.255.128 U 0 0 0 eth0128.6.5.128 B 255.255.255.128 U 0 0 0 eth1127.0.0.0 0.0.0.0 255.0.0.0 U 0 0 0 lo0.0.0.0 128.6.5.1 0.0.0.0 UG 0 0 0 eth0

(default) 128.6.5.1 0.0.0.0 UG 0 0 0 eth0

Question1: Packet with dest IP = 128.6.5.200, what is the next-hop (gateway)?

For each entry:if ( <dest IP> AND <netmask> == <destination field>) {

choose the next hop = the corresponding gateway; break;

}

Question2: How many networks does the router connect to?

Page 10: 1 Recitation 6 Midterm 1’s solution Project 2 IP Forwarding CIDR

10

Network programming in JavaTCP/IP stack

Application Protocol

Transport Protocols (UDP and TCP)

ApplicationLayer

TransportLayer

NetworkLayer

Host-to-Net Layer

Host A Host B

ApplicationLayer

TransportLayer

NetworkLayer

Host-to-Net Layer

NetworkLayer

Host-to-Net Layer

NetworkLayer

Host-to-Net Layer

IPIP IP

Data

DataTCP/UDP header

DataTCP/UDP header

IP header

Page 11: 1 Recitation 6 Midterm 1’s solution Project 2 IP Forwarding CIDR

11

Sample Question: IP Forwarding

The following table is a routing table using CIDR. Address bytes are in hexadecimal. The notation “/12” defines the length of the mask in bits. For example, for C4.50.0.0/12, the mask is 12 bits, or FF.F0.0.0 in hexadecimal notation.

For each of the following destination IP addresses (in hexadecimal), state what the next hop will be by using the routing table above (2 points each):

1. C4.4B.31.2E :2. C4.5E.05.09 :3. C4.4D.31.2E :4. C4.5E.03.87 :5. C4.5E.7E.12 :6. C4.5E.D1.02 :

Dest. Next Hop

C4.5E.2.0/23 A

C4.5E.4.0/22 B

C4.5E.C0.0/19 C

C4.5E.40.0/18 D

C4.4C.0.0/14 E

C0.0.0.0/2 F

80.0.0.0/1 G

default H

Page 12: 1 Recitation 6 Midterm 1’s solution Project 2 IP Forwarding CIDR

12

Reducing Routing Table Size

serviceprovider

200.71.0.0200.71.1.0200.71.2.0…..200.71.255.0

200.71.0.0200.71.1.0200.71.2.0…..200.71.255.0

Routingtable

Without CIDR:

serviceprovider

200.71.0.0200.71.1.0200.71.2.0…..200.71.255.0

Routingtable

With CIDR:

200.71.0.0/16

Page 13: 1 Recitation 6 Midterm 1’s solution Project 2 IP Forwarding CIDR

13

• The company X has 4 offices, each office has one subnet. All subnets connect to a router (Router 1 in the figure). This router connects to the ISP router. The subnets are described in the figure.

ISP Router

Internet

Subnet A

Subnet B

Subnet C

Subnet D

Router 1

139.200.1.0/26

139.200.1.64/26

139.200.1.128/26

139.200.1.192/26

192.168.1.3/24192.168.1.2/24

139.200.1.1

139.200.1.129

139.200.1.193

139.200.1.65

Sample Question: CIDR

Page 14: 1 Recitation 6 Midterm 1’s solution Project 2 IP Forwarding CIDR

14

Sample Question: CIDR (cont.)

A. Fill out the routing table for the router 1:

Destination Netmask Nexthop Interface

Eth1

Eth2

Eth3

Eth4

192.168.1.0 255.255.255.0 192.168.1.2 Eth0

0.0.0.0 0.0.0.0 192.168.1.3 Eth0

Page 15: 1 Recitation 6 Midterm 1’s solution Project 2 IP Forwarding CIDR

15

Sample Question: CIDR (cont.)

B. Assume that the ISP router forwards to the router 1 an IP packet that has the destination address 139.200.1.135. Which subnet will the packet be forwarded to? Based on the routing table in (1), what is the interface that the router 1 will forward the packet through?

C. Assume that the ISP router implement CIDR. What is the routing entry for all subnets of the company X in the routing table of the ISP router?

Destination Netmask Nexthop Interface

Eth1