Top Banner
COMS/CSEE 4140 Networking Laboratory Lecture 02 Salman Abdul Baset Spring 2008
75

COMS/CSEE 4140 Networking Laboratory Lecture 02

Jan 20, 2016

Download

Documents

Noah Tottmar

COMS/CSEE 4140 Networking Laboratory Lecture 02. Salman Abdul Baset Spring 2008. Previous lecture…. Introduction to the lab equipment A simple TCP/IP example Overview of important networking concepts. Previous lecture…. Web request. - PowerPoint PPT Presentation
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: COMS/CSEE 4140 Networking Laboratory Lecture 02

COMS/CSEE 4140 Networking Laboratory

Lecture 02

Salman Abdul BasetSpring 2008

Page 2: COMS/CSEE 4140 Networking Laboratory Lecture 02

2

Previous lecture… Introduction to the lab equipment A simple TCP/IP example Overview of important networking

concepts

Page 3: COMS/CSEE 4140 Networking Laboratory Lecture 02

3

Previous lecture…Web request

Web page

A user on host argon.netlab.edu (“Argon”) makes web access to URL http://neon.netlab.edu/index.html.

What actually happens in the network?

Web client Web server

Page 4: COMS/CSEE 4140 Networking Laboratory Lecture 02

4

Agenda Administrivia

MICE access, lab groups. Data Link Protocols Address Resolution Protocol (ARP) Internet Protocol (IP)

Page 5: COMS/CSEE 4140 Networking Laboratory Lecture 02

5

Terminology Frame

Data link layer terminology for a data unit Includes error correction

Packet Network layer and above

PDU Protocol specific

Page 6: COMS/CSEE 4140 Networking Laboratory Lecture 02

6

TCP/IP Suite and OSI Reference Model

ApplicationLayer

TransportLayer

NetworkLayer

(Data) LinkLayer

• The TCP/IP protocol stack does not define the lower layers of a complete protocol stack

•How does the TCP/IP protocol stack interface with the data link layer?

Logical LinkControl (LLC)

Media AccessControl (MAC)

Sublayer inLocal AreaNetworks

Page 7: COMS/CSEE 4140 Networking Laboratory Lecture 02

7

Data Link Layer The main tasks of the data link layer are:

Transfer data from the network layer of one machine to the network layer of another machine

Convert the raw bit stream of the physical layer into groups of bits (“frames”)

NetworkLayer

Data LinkLayer

PhysicalLayer

NetworkLayer

Data LinkLayer

PhysicalLayer

Page 8: COMS/CSEE 4140 Networking Laboratory Lecture 02

8

Two types of networks at the data link layer Broadcast Networks: All stations share a single

communication channel Point-to-Point Networks: Pairs of hosts (or routers)

are directly connected

Typically, local area networks (LANs) are broadcast and wide area networks (WANs) are point-to-point

Broadcast Network Point-to-Point Network

Page 9: COMS/CSEE 4140 Networking Laboratory Lecture 02

9

Local Area Networks Local area networks (LANs) connect computers within a

building or a enterprise network Almost all LANs are broadcast networks Typical topologies of LANs are bus or ring or star We will work with Ethernet LANs. Ethernet has a bus or

star topology. Comparing topologies: workstation vs. cable failure?

Bus LAN Ring LAN Star LAN

Page 10: COMS/CSEE 4140 Networking Laboratory Lecture 02

10

MAC and LLC In any broadcast network, the stations must

ensure that only one station transmits at a time on the shared communication channel

The protocol that determines who can transmit on a broadcast channel are called Medium Access Control (MAC) protocol

The MAC protocol are implemented in the MAC sublayer which is the lower sublayer of the data link layer

The higher portion of the data link layer is often called Logical Link Control (LLC)

Logical LinkControl

Medium AccessControlD

ata

Link

Laye

r

to Physical Layer

to Network Layer

Page 11: COMS/CSEE 4140 Networking Laboratory Lecture 02

11

IEEE 802 StandardsIEEE 802 is a family of standards for

LANs, which defines an LLC and several MAC sublayers

80

2.3

80

2.4

80

2.5

80

2.1

1

802.2

802.1

IEEE 802 standard

MediumAccessControl

PhysicalLayer

Logical LinkControl

IEEEReference

Model

PhysicalLayer

Data LinkLayer

HigherLayer

Page 12: COMS/CSEE 4140 Networking Laboratory Lecture 02

12

Ethernet and IEEE 802.3: Any Difference? There are two types of Ethernet frames in use,

with subtle differences: “Ethernet” (Ethernet II, DIX)

An industry standards from 1982 that is based on the first implementation of CSMA/CD by Xerox.

Predominant version of CSMA/CD in the US.

802.3: IEEE’s version of CSMA/CD from 1985. Interoperates with 802.2 (LLC) as higher layer.

Difference for our purposes: Ethernet and 802.3 use different methods to encapsulate an IP datagram.

Page 13: COMS/CSEE 4140 Networking Laboratory Lecture 02

13

Ethernet II, DIX Encapsulation (RFC 894)

802.3 MAC

destinationaddress

6

sourceaddress

6

type

2

data

46-1500

CRC

4

0800

2

IP datagram

38-1492

0806

2

ARP request/reply

28

PAD

10

0835

2

RARP request/reply

28

PAD

10

Page 14: COMS/CSEE 4140 Networking Laboratory Lecture 02

14

IEEE 802.2/802.3 Encapsulation (RFC 1042)

802.3 MAC

destinationaddress

6

sourceaddress

6

length

2

DSAPAA

1

SSAPAA

1

cntl03

1

org code0

3

type

2

data

38-1492

CRC

4

802.2 LLC 802.2 SNAP

- destination address, source address:MAC addresses are 48 bit

- lengt h : frame length in number of bytes- DSAP, SSAP : always set to 0xaa- Ctrl: set t o 3- org code: set to 0- type field identifies the content of the

data field- CRC: cylic redundancy check

0800

2

IP datagram

38-1492

0806

2

ARP request/reply

28

PAD

10

0835

2

RARP request/reply

28

PAD

10

Page 15: COMS/CSEE 4140 Networking Laboratory Lecture 02

15

Ethernet Speed: 10 Mbps -10 Gbps Standard: 802.3, Ethernet II (DIX)

Most popular physical layers for Ethernet:

10Base5 Thick Ethernet: 10 Mbps coax cable 10Base2 Thin Ethernet: 10 Mbps coax cable 10Base-T 10 Mbps Twisted Pair 100Base-TX 100 Mbps over Category 5 twisted

pair 100Base-FX 100 Mbps over Fiber Optics 1000Base-FX 1Gbps over Fiber Optics 10000Base-FX 10Gbps over Fiber Optics (for wide

area links)

Page 16: COMS/CSEE 4140 Networking Laboratory Lecture 02

16

Bus Topology

Ethernet

10Base5 and 10Base2 Ethernets have a bus topology

Page 17: COMS/CSEE 4140 Networking Laboratory Lecture 02

17

Starting with 10Base-T, stations are connected to a hub in a star configuration

Star Topology

Hub

Page 18: COMS/CSEE 4140 Networking Laboratory Lecture 02

18

Ethernet Hubs vs. Ethernet Switches An Ethernet switch is a packet switch for

Ethernet frames Buffering of frames prevents collisions. Each port is isolated and builds its own collision domain

An Ethernet Hub does not perform buffering: Collisions occur if two frames arrive at the same time.

HighS

peedB

ackplane

CSMA/CD

CSMA/CD

CSMA/CD

CSMA/CD

CSMA/CD

CSMA/CD

CSMA/CD

CSMA/CD

OutputBuffers

InputBuffers

CSMA/CD

CSMA/CD

CSMA/CD

CSMA/CD

CSMA/CD

CSMA/CD

CSMA/CD

CSMA/CD

Hub Switch

Page 19: COMS/CSEE 4140 Networking Laboratory Lecture 02

19

Dial-Up Access

AccessRouter

Modems

Point-to-Point (serial) links Many data link connections are

point-to-point serial links: Dial-in or DSL access connects hosts to

access routers Routers are connected by

high-speed point-to-point links

Here, IP hosts and routers are connected by a serial cable

Data link layer protocols for point-to-point links are simple: Main role is encapsulation of IP

datagrams No media access control needed

Point-to-Point Links

Router

Router

Router Router

Page 20: COMS/CSEE 4140 Networking Laboratory Lecture 02

20

Data Link Protocols for Point-to-Point links SLIP (Serial Line IP) (RFC 1055)

First protocol for sending IP datagrams over dial-up links (from 1988)

Encapsulation, not much else

PPP (Point-to-Point Protocol) (RFC 1661)• Successor to SLIP (1992), with added functionality• Used for dial-in and for high-speed routers

HDLC (High-Level Data Link) (ISO) • Widely used and influential standard (1979)• Default protocol for serial links on Cisco routers• Actually, PPP is based on a variant of HDLC

Page 21: COMS/CSEE 4140 Networking Laboratory Lecture 02

21

PPP - IP encapsulation The frame format of PPP is similar to HDLC and the 802.2 LLC

frame format:

PPP assumes a duplex circuit Note: PPP does not use addresses Usual maximum frame size is 1500

7E

flag

1

FF

addr

1

03

ctrl

1 2

protocol

<= 1500

data

2

CRC

7E

flag

1

0021 IP datagram

C021 link control data

8021 network control data

Page 22: COMS/CSEE 4140 Networking Laboratory Lecture 02

22

Additional PPP functionality In addition to encapsulation, PPP supports:

multiple network layer protocols (protocol multiplexing) Link configuration Link quality testing Error detection Option negotiation Address notification Authentication

The above functions are supported by helper protocols: LCP PAP, CHAP NCP

Page 23: COMS/CSEE 4140 Networking Laboratory Lecture 02

23

PPP Support protocolsLink management: The link control protocol (LCP) is responsible for establishing, configuring, and negotiating a data-link connection. LCP also monitors the link quality and is used to terminate the link.

Authentication: Authentication is optional. PPP supports two authentication protocols: Password Authentication Protocol (PAP) and Challenge Handshake Authentication Protocol (CHAP).

Network protocol configuration: PPP has network control protocols (NCPs) for numerous network layer protocols. The IP control protocol (IPCP) negotiates IP address assignments and other parameters when IP is used as network layer.

Page 24: COMS/CSEE 4140 Networking Laboratory Lecture 02

24

Agenda Administrivia Data Link Protocols Address Resolution Protocol (ARP) Internet Protocol (IP)

Page 25: COMS/CSEE 4140 Networking Laboratory Lecture 02

25

NetworkLayer

Link Layer

IP

ARP NetworkAccess RARP

Media

ICMP IGMP

TransportLayer

TCP UDP

Overview

Page 26: COMS/CSEE 4140 Networking Laboratory Lecture 02

26

ARP (RFC 826) and RARP (RFC 903) Note:

The Internet is based on IP addresses Data link protocols (Ethernet, FDDI, ATM) may have

different (MAC) addresses The ARP and RARP protocols perform the

translation between IP addresses and MAC layer addresses

We will discuss ARP for broadcast LANs, particularly Ethernet LANs

RARP

Ethernet MACaddress(48 bit)

ARPIP address(32 bit)

Page 27: COMS/CSEE 4140 Networking Laboratory Lecture 02

27

Processing of IP packets by network device drivers

loopbackDriver

IP Input

Put on IPinput queue

ARPdemultiplex

Ethernet Frame

Ethernet

IP destination of packet= local IP address ?

IP destination = multicastor broadcast ?

IP Output

Put on IPinput queue

No: get MACaddress withARP

ARPPacket

IP datagram

No

Yes

YesEthernet

Driver

Page 28: COMS/CSEE 4140 Networking Laboratory Lecture 02

28

TopologyWeb request

Web page

A user on host argon.netlab.edu (“Argon”) makes web access to URL http://neon.netlab.edu/index.html.

What actually happens in the network?

Web client Web server

Page 29: COMS/CSEE 4140 Networking Laboratory Lecture 02

29

Address Translation with ARPARP Request:

Argon broadcasts an ARP request to all stations on the network: “What is the hardware address of Router137?”Argon

128.143.137.14400:a0:24:71:e4:44

Router137128.143.137.1

00:e0:f9:23:a8:20

ARP Request:What is the MAC addressof 128.143.71.1?

Page 30: COMS/CSEE 4140 Networking Laboratory Lecture 02

30

Address Translation with ARPARP Reply:

Router 137 responds with an ARP Reply which contains the hardware addressArgon

128.143.137.14400:a0:24:71:e4:44

Router137128.143.137.1

00:e0:f9:23:a8:20

ARP Reply:The MAC address of 128.143.71.1is 00:e0:f9:23:a8:20

Page 31: COMS/CSEE 4140 Networking Laboratory Lecture 02

31

ARP Packet Format

Destinationaddress

6

ARP Request or ARP Reply

28

Sourceaddress

6 2

CRC

4

Type0x8060

Padding

10

Ethernet II header

Hardware type (2 bytes)

Hardware addresslength (1 byte)

Protocol addresslength (1 byte)

Operation code (2 bytes)

Target hardware address*

Protocol type (2 bytes)

Source hardware address*

Source protocol address*

Target protocol address*

* Note: The length of the address fields is determined by the corresponding address length fields

Page 32: COMS/CSEE 4140 Networking Laboratory Lecture 02

32

Example ARP Request from Argon:

Source hardware address: 00:a0:24:71:e4:44Source protocol address: 128.143.137.144Target hardware address: 00:00:00:00:00:00Target protocol address: 128.143.137.1

ARP Reply from Router137: Source hardware address: 00:e0:f9:23:a8:20 Source protocol address: 128.143.137.1 Target hardware address: 00:a0:24:71:e4:44Target protocol address: 128.143.137.144

Page 33: COMS/CSEE 4140 Networking Laboratory Lecture 02

33

ARP Cache Since sending an ARP request/reply for each

IP datagram is inefficient, hosts maintain a cache (ARP Cache) of current entries. The entries expire after 20 minutes.

Contents of the ARP Cache:(128.143.71.37) at 00:10:4B:C5:D1:15 [ether] on eth0(128.143.71.36) at 00:B0:D0:E1:17:D5 [ether] on eth0(128.143.71.35) at 00:B0:D0:DE:70:E6 [ether] on eth0(128.143.136.90) at 00:05:3C:06:27:35 [ether] on eth1(128.143.71.34) at 00:B0:D0:E1:17:DB [ether] on eth0(128.143.71.33) at 00:B0:D0:E1:17:DF [ether] on eth0

Page 34: COMS/CSEE 4140 Networking Laboratory Lecture 02

34

Proxy ARP Proxy ARP: Host or router responds to

ARP Request that arrives from one of its connected networks for a host that is on another of its connected networks.

128.143.137.1/1600:e0:f9:23:a8:20

128.143.71.1/24

128.143.0.0/16Subnet

128.143.71.0/24Subnet

Router137

ARP Request:What is the MAC addressof 128.143.71.21?

128.143.137.144/16128.143.171.21/2400:20:af:03:98:28

Argon Neon

ARP Reply:The MAC address of128.143.71.21 is00:e0:f9:23:a8:20

Page 35: COMS/CSEE 4140 Networking Laboratory Lecture 02

35

Things to know about ARP What happens if an ARP Request is made for a non-

existing host?Several ARP requests are made with increasing time intervals between requests. Eventually, ARP gives up.

On some systems (including Linux) a host periodically sends ARP Requests for all addresses listed in the ARP cache. This refreshes the ARP cache content, but also introduces traffic.

Gratuitous ARP Requests: A host sends an ARP request for its own IP address: Useful for detecting if an IP address has already been

assigned.

Page 36: COMS/CSEE 4140 Networking Laboratory Lecture 02

36

Vulnerabilities of ARP1. Since ARP does not authenticate requests or replies, ARP

Requests and Replies can be forged2. ARP is stateless: ARP Replies can be sent without a

corresponding ARP Request3. According to the ARP protocol specification, a node receiving an

ARP packet (Request or Reply) must update its local ARP cache with the information in the source fields, if the receiving node already has an entry for the IP address of the source in its ARP cache. (This applies for ARP Request packets and for ARP Reply packets)

Typical exploitation of these vulnerabilities: A forged ARP Request or Reply can be used to update the ARP

cache of a remote system with a forged entry (ARP Poisoning) This can be used to redirect IP traffic to other hosts

Page 37: COMS/CSEE 4140 Networking Laboratory Lecture 02

37

Agenda Administrivia Data Link Protocols Address Resolution Protocol (ARP) Internet Protocol (IP)

Page 38: COMS/CSEE 4140 Networking Laboratory Lecture 02

38

IP Addresses

Structure of an IP address Classful IP addresses Limitations and problems with classful IP

addresses Subnetting CIDR IP Version 6 addresses

Page 39: COMS/CSEE 4140 Networking Laboratory Lecture 02

39

IP Addresses

Application dataTCP HeaderEthernet Header Ethernet Trailer

Ethernet frame

IP Header

version(4 bits)

headerlength

Type of Service/TOS(8 bits)

Total Length (in bytes)(16 bits)

Identification (16 bits)flags

(3 bits)Fragment Offset (13 bits)

Source IP address (32 bits)

Destination IP address (32 bits)

TTL Time-to-Live(8 bits)

Protocol(8 bits)

Header Checksum (16 bits)

32 bits

Page 40: COMS/CSEE 4140 Networking Laboratory Lecture 02

40

IP Addresses

Application dataTCP HeaderEthernet Header Ethernet Trailer

Ethernet frame

IP Header

0x4 0x5 0x00 4410

9d08 0102 00000000000002

128.143.137.144

128.143.71.21

12810 0x06 8bff

32 bits

Page 41: COMS/CSEE 4140 Networking Laboratory Lecture 02

41

What is an IP Address? An IP address is a unique global address for a

network interface Exceptions:

Dynamically assigned IP addresses ( DHCP, Lab 7) IP addresses in private networks ( NAT, Lab 7)

An IP address:- is a 32 bit long identifier- encodes a network number (network prefix) and a host number

Page 42: COMS/CSEE 4140 Networking Laboratory Lecture 02

42

The network prefix identifies a network and the host number identifies a specific host (actually, interface on the network).

How do we know how long the network prefix is? Before 1993: The network prefix is implicitly defined

(class-based addressing)or After 1993: The network prefix is indicated by a netmask.

Network prefix and host number

network prefixnetwork prefix host numberhost number

Page 43: COMS/CSEE 4140 Networking Laboratory Lecture 02

43

Dotted Decimal Notation IP addresses are written in a so-called dotted

decimal notation Each byte is identified by a decimal number in

the range [0..255]:

Example:

1000111110000000 10001001 100100001st Byte

= 128

2nd Byte

= 143

3rd Byte

= 137

4th Byte

= 144

128.143.137.144

Page 44: COMS/CSEE 4140 Networking Laboratory Lecture 02

44

Example: ellington.cs.virginia.edu

Network address is: 128.143.0.0 (or 128.143) Host number is: 137.144 Netmask is: 255.255.0.0 (or ffff0000)

Prefix or CIDR notation: 128.143.137.144/16 Network prefix is 16 bits long

Example

128.143128.143 137.144137.144

Page 45: COMS/CSEE 4140 Networking Laboratory Lecture 02

45

Special IP Addresses Reserved or (by convention) special addresses: Loopback interfaces

all addresses 127.0.0.1-127.255.255.255 are reserved for loopback interfaces Most systems use 127.0.0.1 as loopback address loopback interface is associated with name “localhost”

IP address of a network Host number is set to all zeros, e.g., 128.143.0.0

Broadcast address Host number is all ones, e.g., 128.143.255.255 Broadcast goes to all hosts on the network Often ignored due to security concerns

Test / Experimental addresses Certain address ranges are reserved for “experimental use”. Packets should get dropped if they contain this destination address (see RFC 1918):

10.0.0.0 - 10.255.255.255

172.16.0.0 - 172.31.255.255

192.168.0.0 - 192.168.255.255 Convention (but not a reserved address)

Default gateway has host number set to ‘1’, e.g., e.g., 192.0.1.1

Page 46: COMS/CSEE 4140 Networking Laboratory Lecture 02

46

Special IPv4 Addresses (RFC 3330)Addresses

CIDR Equivalent

Purpose RFC Class# of addresses

0.0.0.0 - 0.255.255.255 0.0.0.0/8 Zero Addresses RFC 1700 A 16,777,216

10.0.0.0 - 10.255.255.255 10.0.0.0/8 Private IP addresses RFC 1918 A 16,777,216

127.0.0.0 - 127.255.255.255 127.0.0.0/8

Localhost Loopback Address

RFC 1700 A 16,777,216

169.254.0.0 - 169.254.255.255 169.254.0.0/16 Zeroconf RFC 3330 B 65,536

172.16.0.0 - 172.31.255.255 172.16.0.0/12 Private IP addresses RFC 1918 B 1,048,576

192.0.2.0 - 192.0.2.255 192.0.2.0/24Documentation and Examples

RFC 3330 C 256

192.88.99.0 - 192.88.99.255 192.88.99.0/24

IPv6 to IPv4 relay Anycast

RFC 3068 C 256

192.168.0.0 - 192.168.255.255 192.168.0.0/16 Private IP addresses RFC 1918 C 65,536

198.18.0.0 - 198.19.255.255 198.18.0.0/15

Network Device Benchmark

RFC 2544 C 131,072

224.0.0.0 - 239.255.255.255 224.0.0.0/4 Multicast RFC 3171 D 268,435,456

240.0.0.0 - 255.255.255.255 240.0.0.0/4 Reserved RFC 1700 E 268,435,456

Page 47: COMS/CSEE 4140 Networking Laboratory Lecture 02

47

Subnetting

Subnetting Problem:

Organizations have multiple networks which are independently managed Solution 1: Allocate a

separate network address for each network

Difficult to manage From the outside of the

organization, each network must be addressable.

Solution 2: Add another level of hierarchy to the IP addressing structure

University NetworkUniversity Network

Medical School

Library

EngineeringSchool

Page 48: COMS/CSEE 4140 Networking Laboratory Lecture 02

48

Each part of the organization is allocated a range of IP addresses (subnets or subnetworks)

Addresses in each subnet can be administered locally

Address Assignment with Subnetting

University NetworkUniversity Network

Medical School

Library

EngineeringSchool

128.143.0.0/16

128.143.71.0/24128.143.136.0/24

128.143.56.0/24

128.143.121.0/24

Page 49: COMS/CSEE 4140 Networking Laboratory Lecture 02

49

Basic Idea of Subnetting Split the host number portion of an IP address into a

subnet number and a (smaller) host number.

Result is a 3-layer hierarchy

Then: Subnets can be freely assigned within the organization Internally, subnets are treated as separate networks Subnet structure is not visible outside the organization

network prefixnetwork prefix host numberhost number

subnet numbersubnet numbernetwork prefixnetwork prefix host numberhost number

extended network prefix

Page 50: COMS/CSEE 4140 Networking Laboratory Lecture 02

50

Routers and hosts use an extended network prefix (subnetmask) to identify the start of the host numbers

Subnetmask

128.143 137.144

network prefix host number

128.143 144

network prefix host numbersubnetnumber

137

extended network prefix

1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0

subnetmask

Page 51: COMS/CSEE 4140 Networking Laboratory Lecture 02

51

Advantages of Subnetting With subnetting, IP addresses use a 3-layer

hierarchy: Network Subnet Host

Reduces router complexity. Since external routers do not know about subnetting, the complexity of routing tables at external routers is reduced.

Note: Length of the subnet mask need not be identical at all subnetworks.

Page 52: COMS/CSEE 4140 Networking Laboratory Lecture 02

52

Example: Subnetmask 128.143.0.0/16 is the IP address of the network 128.143.137.0/24 is the IP address of the subnet

128.143.137.144 is the IP address of the host 255.255.255.0 (or ffffff00) is the subnetmask of the host

When subnetting is used, one generally speaks of a “subnetmask” (instead of a netmask) and a “subnet” (instead of a network)

Use of subnetting or length of the subnetmask if decided by the network administrator

Consistency of subnetmasks is responsibility of administrator

Page 53: COMS/CSEE 4140 Networking Laboratory Lecture 02

53

No Subnetting All hosts think that the other hosts are on

the same network

128.143.70.0/16

128.143.137.32/16subnetmask: 255.255.0.0

128.143.71.21/16subnetmask: 255.255.0.0

128.143.137.144/16subnetmask: 255.255.0.0

128.143.71.201/16subnetmask: 255.255.0.0

Page 54: COMS/CSEE 4140 Networking Laboratory Lecture 02

54

128.143.0.0/16

128.143.137.32/24subnetmask: 255.255.255.0

128.143.71.21/24subnetmask: 255.255.255.0

128.143.137.144/24subnetmask: 255.255.255.0

128.143.71.201/24subnetmask: 255.255.255.0

128.143.137.0/24Subnet

128.143.71.0/24Subnet

With Subnetting Hosts with same extended network prefix

belong to the same network

Page 55: COMS/CSEE 4140 Networking Laboratory Lecture 02

55

Different subnetmasks lead to different views of the size of the scope of the network

128.143.0.0/16

128.143.137.32/26subnetmask: 255.255.255.192

128.143.71.21/24subnetmask: 255.255.255.0

128.143.137.144/26subnetmask: 255.255.255.192

128.143.71.201/16subnetmask: 255.255.0.0

128.143.71.0/24Subnet

128.143.137.128/26Subnet

128.143.137.0/26Subnet

With Subnetting

192: 11000000144: 10010000128: 10000000

Page 56: COMS/CSEE 4140 Networking Laboratory Lecture 02

56

Classful IP Adresses (Until 1993) When Internet addresses were standardized

(early 1980s), the Internet address space was divided up into classes: Class A: Network prefix is 8 bits long Class B: Network prefix is 16 bits long Class C: Network prefix is 24 bits long

Each IP address contained a key which identifies the class: Class A: IP address starts with “0” Class B: IP address starts with “10” Class C: IP address starts with “110”

Page 57: COMS/CSEE 4140 Networking Laboratory Lecture 02

57

The old way: Internet Address Classes

Class C network id host11 0

Network Prefix24 bits

Host Number8 bits

bit # 0 1 23 242 313

Class B 1 network id host

bit # 0 1 15 162

Network Prefix16 bits

Host Number16 bits

031

Class A 0Network Prefix

8 bits

bit # 0 1 7 8

Host Number24 bits

31

Page 58: COMS/CSEE 4140 Networking Laboratory Lecture 02

58

Class D multicast group id11 1bit # 0 1 2 313

04

Class E (reserved for future use)11 1bit # 0 1 2 313

14

05

The old way: Internet Address Classes

We will learn about multicast addresses later in this course.

Page 59: COMS/CSEE 4140 Networking Laboratory Lecture 02

59

Problems with Classful IP Addresses

By the early 1990s, the original classful address scheme had a number of problems Flat address space. Routing tables on the backbone

Internet need to have an entry for each network address. When Class C networks were widely used, this created a problem. By the 1993, the size of the routing tables started to outgrow the capacity of routers.

Other problems: Too few network addresses for large networks

Class A and Class B addresses were gone

Limited flexibility for network addresses: Class A and B addresses are overkill (>64,000 addresses) Class C address is insufficient (requires 40 Class C addresses)

Page 60: COMS/CSEE 4140 Networking Laboratory Lecture 02

60

Allocation of Classful Addresses

Page 61: COMS/CSEE 4140 Networking Laboratory Lecture 02

61

CIDR - Classless Interdomain Routing IP backbone routers have one routing table

entry for each network address: With subnetting, a backbone router only needs to know one

entry for each Class A, B, or C networks This is acceptable for Class A and Class B networks

27 = 128 Class A networks 214 = 16,384 Class B networks

But this is not acceptable for Class C networks 221 = 2,097,152 Class C networks

In 1993, the size of the routing tables started to outgrow the capacity of routers

Consequence: The Class-based assignment of IP addresses had to be abandoned

Page 62: COMS/CSEE 4140 Networking Laboratory Lecture 02

62

CIDR - Classless Interdomain Routing Goals:

New interpretation of the IP address space Restructure IP address assignments to increase

efficiency Permits route aggregation to minimize route table

entries

CIDR (Classless Interdomain routing) abandons the notion of classes Key Concept: The length of the network prefix in the

IP addresses is kept arbitrary Consequence: Size of the network prefix must be

provided with an IP address

Page 63: COMS/CSEE 4140 Networking Laboratory Lecture 02

63

CIDR Notation CIDR notation of an IP address:

192.0.2.0/18 "18" is the prefix length. It states that the first 18 bits are the

network prefix of the address (and 14 bits are available for specific host addresses)

CIDR notation can replace the use of subnetmasks (but is more general) IP address 128.143.137.144 and subnetmask 255.255.255.0

becomes 128.143.137.144/24

CIDR notation allows to drop traling zeros of network addresses:192.0.2.0/18 can be written as 192.0.2/18

Page 64: COMS/CSEE 4140 Networking Laboratory Lecture 02

64

CIDR address blocks CIDR notation can nicely express blocks of addresses Blocks are used when allocating IP addresses for a company and

for routing tables (route aggregation)

CIDR Block Prefix # of Host Addresses /27 32 /26 64 /25 128 /24 256 /23 512 /22 1,024 /21 2,048 /20 4,096 /19 8,192 /18 16,384 /17 32,768 /16 65,536 /15 131,072 /14 262,144 /13 524,288

Page 65: COMS/CSEE 4140 Networking Laboratory Lecture 02

65

CIDR and Address assignments Backbone ISPs obtain large block of IP addresses

space and then reallocate portions of their address blocks to their customers.

Example: Assume that an ISP owns the address block 206.0.64.0/18,

which represents 16,384 (214) IP addresses Suppose a client requires 800 host addresses With classful addresses: need to assign a class B

address (and waste ~64,700 addresses) or four individual Class Cs (and introducing 4 new routes into the global Internet routing tables)

With CIDR: Assign a /22 block, e.g., 206.0.68.0/22, and allocated a block of 1,024 (210) IP addresses.

Page 66: COMS/CSEE 4140 Networking Laboratory Lecture 02

66

CIDR and Routing Aggregation of routing table entries:

128.143.0.0/16 and 128.144.0.0/16 are represented as 128.142.0.0/15

Longest prefix match: Routing table lookup finds the routing entry that matches the longest prefix

What is the outgoing interface for 128.143.137.0/24 ?

Route aggregation can be exploited when IP address blocks are assigned in an hierarchical fashion

Prefix Interface

128.0.0.0/4 interface #5

128.128.0.0/9 interface #2

128.143.128.0/17

interface #1

Routing table

Page 67: COMS/CSEE 4140 Networking Laboratory Lecture 02

67

CIDR and Routing Information

206.0.64.0/18204.188.0.0/15209.88.232.0/21

Internet Backbone

ISP X owns:

Company X :

206.0.68.0/22

ISP y :

209.88.237.0/24

Organization z1 :

209.88.237.192/26

Organization z2 :

209.88.237.0/26

Page 68: COMS/CSEE 4140 Networking Laboratory Lecture 02

68

CIDR and Routing Information

206.0.64.0/18204.188.0.0/15209.88.232.0/21

Internet Backbone

ISP X owns:

Company X :

206.0.68.0/22

ISP y :

209.88.237.0/24

Organization z1 :

209.88.237.192/26

Organization z2 :

209.88.237.0/26

Backbone sends everything which matches the prefixes 206.0.64.0/18, 204.188.0.0/15, 209.88.232.0/21 to ISP X.

ISP X sends everything which matches the prefix: 206.0.68.0/22 to Company X,209.88.237.0/24 to ISP y

Backbone routers do not know anything about Company X, ISP Y, or Organizations z1, z2.

ISP X does not know about Organizations z1, z2.

ISP y sends everything which matches the prefix: 209.88.237.192/26 to Organizations z1 209.88.237.0/26 to Organizations z2

Page 69: COMS/CSEE 4140 Networking Laboratory Lecture 02

69

IPv6 - IP Version 6 IP Version 6

Is the successor to the currently used IPv4 Specification completed in 1994 Makes improvements to IPv4 (no revolutionary

changes)

One (not the only !) feature of IPv6 is a significant increase in of the IP address to 128 bits (16 bytes)

IPv6 will solve – for the foreseeable future – the problems with IP addressing

1024 addresses per square inch on the surface of the Earth.

Page 70: COMS/CSEE 4140 Networking Laboratory Lecture 02

70

IPv6 Header

Application dataTCP HeaderEthernet Header Ethernet Trailer

Ethernet frame

IPv6 Header

version(4 bits)

Traffic Class(8 bits)

Flow Label(24 bits)

Payload Length (16 bits)Next Header

(8 bits)Hop Limits (8 bits)

Source IP address (128 bits)

32 bits

Destination IP address (128 bits)

Page 71: COMS/CSEE 4140 Networking Laboratory Lecture 02

71

IPv6 vs. IPv4: Address Comparison IPv4 has a maximum of

232 4 billion addresses

IPv6 has a maximum of 2128 = (232)4 4 billion x 4 billion x 4 billion x 4

billion addresses

Page 72: COMS/CSEE 4140 Networking Laboratory Lecture 02

72

Notation of IPv6 addresses Convention: The 128-bit IPv6 address is written as eight

16-bit integers (using hexadecimal digits for each integer)CEDF:BP76:3245:4464:FACE:2E50:3025:DF12

Short notation: Abbreviations of leading zeroes:

CEDF:BP76:0000:0000:009E:0000:3025:DF12

CEDF:BP76:0:0:9E :0:3025:DF12 “:0000:0000:0000” can be written as “::”

CEDF:BP76:0:0:FACE:0:3025:DF12 CEDF:BP76::FACE:0:3025:DF12

IPv6 addresses derived from IPv4 addresses have 96 leading zero bits. Convention allows to use IPv4 notation for the last 32 bits.::80:8F:89:90 ::128.143.137.144

Page 73: COMS/CSEE 4140 Networking Laboratory Lecture 02

73

IPv6 Provider-Based Addresses The first IPv6 addresses will be allocated to a provider-

based plan

Type: Set to “010” for provider-based addresses Registry: identifies the agency that registered the

addressThe following fields have a variable length (recommeded length in

“()”) Provider: Id of Internet access provider (16 bits) Subscriber: Id of the organization at provider (24 bits) Subnetwork: Id of subnet within organization (32 bits) Interface: identifies an interface at a node (48 bits)

Registry ID

Registry ID

Provider ID

Provider ID010010 Subscriber

ID Subscriber

IDInterface

IDInterface

IDSubnetwork

IDSubnetwork

ID

Page 74: COMS/CSEE 4140 Networking Laboratory Lecture 02

74

Line cards

Cisco CRS-1 1-Port OC-768c (40 Gb/s)

Cisco CRS-1 4-Port10 GbE

Page 75: COMS/CSEE 4140 Networking Laboratory Lecture 02

75

Lab this week…