37
1 Introduction to Computer Networks University of Ilam By: Dr. Mozafar Bag-Mohammadi Internetworking

1 Introduction to Computer Networks University of Ilam By: Dr. Mozafar Bag-Mohammadi Internetworking

Embed Size (px)

Citation preview

Page 1: 1 Introduction to Computer Networks University of Ilam By: Dr. Mozafar Bag-Mohammadi Internetworking

1

Introduction to Computer Networks

University of Ilam

By: Dr. Mozafar Bag-Mohammadi

Internetworking

Page 2: 1 Introduction to Computer Networks University of Ilam By: Dr. Mozafar Bag-Mohammadi Internetworking

2

Internetworking Communication between networks. Problems:

Different Networking technologies (Heterogeneity). So many Networks (Scaling).

Some terminologies: “internetworking” refer to an arbitrary collection of

connected networks. “Internet” the global internetwork. “Network” either directly connected or switched

network using any LAN technology such as Ethernet, Token ring, ATM, etc.

Page 3: 1 Introduction to Computer Networks University of Ilam By: Dr. Mozafar Bag-Mohammadi Internetworking

3

IP Internet

Concatenation of Networks or “networks of Networks”.

“R” is routers and “H” is hosts.

R2

R1

H4

H5

H3H2H1

Network 2 (Ethernet)

Network 1 (Ethernet)

H6

Network 3 (FDDI)

Network 4(point-to-point)

H7 R3 H8

Page 4: 1 Introduction to Computer Networks University of Ilam By: Dr. Mozafar Bag-Mohammadi Internetworking

4

IP Internet (cont)

Protocol Stack

Everything is running on top IP

R1

ETH FDDI

IPIP

ETH

TCP R2

FDDI PPP

IP

R3

PPP ETH

IP

H1

IP

ETH

TCP

H8

Page 5: 1 Introduction to Computer Networks University of Ilam By: Dr. Mozafar Bag-Mohammadi Internetworking

5

Source Routing

0

13

2

0

1 3

2

0

13

2

0

13

2

3 0 1 3 01

30 1

Switch 3

Host B

Switch 2

Host A

Switch 1

• All routing information is provided by the source.•The address can be implemented by a linked list in the packet header.

Page 6: 1 Introduction to Computer Networks University of Ilam By: Dr. Mozafar Bag-Mohammadi Internetworking

6

Networking Technologies

Circuit Based Packet Based

Virtual Circuits Connectionless

TDM TelephonySONET/SDH

Frame RelayATM

IP

X.25

CLNP (ISO)SNA (IBM)Appletalk IPX (Novell)

DWDM

Connection Oriented

(variable rate, store-and-forward)(constant rate)

Page 7: 1 Introduction to Computer Networks University of Ilam By: Dr. Mozafar Bag-Mohammadi Internetworking

7

Virtual Circuit Switching Problems with source routing:

The source must know the whole topology of network.

The number of switches (header) is variable. 2nd solution: use the telephone model or virtual

circuits. Explicit connection setup (and tear-down) phase. This

is called signaling. Each flow is identified by a Virtual Circuits Identifier

(VCI). Switch needs to maintains a VC table.

Page 8: 1 Introduction to Computer Networks University of Ilam By: Dr. Mozafar Bag-Mohammadi Internetworking

8

Virtual Circuit Switching (cont) Subsequence packets follow the same circuit

Sometimes called connection-oriented model. VCIs is swapped in the switches. Example: Lookup table.

0

13

2

01 3

2

0

13

25 11

4

7

Switch 3

Host B

Switch 2

Host A

Switch 1

In-port In-VCI Out-port Out-VCI

2 5 1 11

3 11 0 7

Page 9: 1 Introduction to Computer Networks University of Ilam By: Dr. Mozafar Bag-Mohammadi Internetworking

9

Virtual Circuit Model Typically wait full RTT for connection setup

before sending first data packet.

While the connection request contains the full address for destination, each data packet contains only a small identifier, making the per-packet header overhead small.

If a switch or a link on the path fails, the connection is broken and a new one needs to be established.

Connection setup provides an opportunity to reserve resources.

Page 10: 1 Introduction to Computer Networks University of Ilam By: Dr. Mozafar Bag-Mohammadi Internetworking

10

Datagram Switching No connection setup phase since it is costly. Each packet forwarded independently Sometimes called connectionless model

0

132

01 3

2

013

2

Switch 3 Host B

Switch 2

Host A

Switch 1

Host C

Host D

Host EHost F

Host G

Host H

Analogy: postal system

Each switch maintains a forwarding (routing) table

Page 11: 1 Introduction to Computer Networks University of Ilam By: Dr. Mozafar Bag-Mohammadi Internetworking

11

Datagram Model There is no round trip time delay waiting for connection

setup; a host can send data as soon as it is ready.

Source host has no way of knowing if the network is capable of delivering a packet or if the destination host is even up.

Since packets are treated independently, it is possible to route around link and node failures.

Since every packet must carry the full address of the destination, the overhead per packet is higher.

Page 12: 1 Introduction to Computer Networks University of Ilam By: Dr. Mozafar Bag-Mohammadi Internetworking

12

Connection Oriented vs. Connectionless

Connection Oriented

Connectionless•Best-effort delivery (Send and Pray)

•packets are lost. No recover from lost.•packets are delivered out of order•duplicate copies of a packet are delivered•packets can be delayed for a long time

• Connection set up. Signaling reserves resources along the end-to-end path

• Traffic flows • Connection torn down and resources freed

Page 13: 1 Introduction to Computer Networks University of Ilam By: Dr. Mozafar Bag-Mohammadi Internetworking

13

Encapsulation Example

Ethernet Header

IP Header

TCP Header

HTTP Header

….

HTTP Data ….

An Ethernet segment transmitting HTTP data.

Page 14: 1 Introduction to Computer Networks University of Ilam By: Dr. Mozafar Bag-Mohammadi Internetworking

14

IP Headers

The current Version is 4 or IPv4. HLen- the Header Length: from 5-15 in 32-bit words. Length- the total length of the packet including headers.

Max length is 64K.

Version HLen TOS Length

Ident Flags Offset

TTL Protocol Checksum

SourceAddr

DestinationAddr

Options (variable) Pad(variable)

0 4 8 16 19 31

Data

Page 15: 1 Introduction to Computer Networks University of Ilam By: Dr. Mozafar Bag-Mohammadi Internetworking

15

Packet Headers

TTL: Time To Live is expressed in second. It is to prevent packet from permanently circulating in a loop.

Protocol: specify the packet application ex. 1 for ICMP. It is for demultiplexing to higher layer protocols.

Checksum: is a 1-complement error checksum for the header only.

Page 16: 1 Introduction to Computer Networks University of Ilam By: Dr. Mozafar Bag-Mohammadi Internetworking

16

Packet Headers (Cont)

TOS: type of Service Precedence

Specify the priority Type of Services

Specify routing, for instance cheapest, fastest and more reliable

D for Delay T for Throughput R for Reliability C for low cost.

Note: Precedence is only for inside channel queuing.

0 2 | 3 7

PrecedenceType of service

D T R C

Page 17: 1 Introduction to Computer Networks University of Ilam By: Dr. Mozafar Bag-Mohammadi Internetworking

17

Packet Headers (Cont) Options

If C set, the option will copied to all fragments. Otherwise, only to the first one.

Class 0 for control Class 2 for debugging and measurement.

Options are rarely used in today except for ‘loose’ and ‘strict’ source routing parameters.

‘loose’ and ‘strict’ source option sometimes, is used for IP encapsulation in another IP or “Tunneling”

C Class Number

Page 18: 1 Introduction to Computer Networks University of Ilam By: Dr. Mozafar Bag-Mohammadi Internetworking

18

Fragmentation and Reassembly0 7|0 7|0 4 7|0 7

Identification Flags Fragment Offset

0 1 2

0 DF MF

Flags DF: Don’t Fragment MF: More Fragment coming

In fragmentation, IP copy the original header and only modifyThe length, which is the new length, and offset. Offset is used for reassembly. Note: Fragmentation may degrade the network performance.

TCP implement “Path MTU discovery”. It start with large packet and with DF set flag, if it passed, TCP keeps the same packet size, otherwise, it reduces it.

Page 19: 1 Introduction to Computer Networks University of Ilam By: Dr. Mozafar Bag-Mohammadi Internetworking

19

Fragmentation and Reassembly (cont)

Each network has a Maximum Transfer Unit size, MTU Strategy

fragment when necessary (MTU < Datagram) try to avoid fragmentation at source host re-fragmentation is possible fragments are self-contained datagrams delay reassembly until destination host do not recover from lost fragments

Page 20: 1 Introduction to Computer Networks University of Ilam By: Dr. Mozafar Bag-Mohammadi Internetworking

20

Example

• Packet delivery from host H1 to host H8

H1 R1 R2 R3 H8

ETH IP (1400) FDDI IP (1400) PPP IP (512)

PPP IP (376)

PPP IP (512)

ETH IP (512)

ETH IP (376)

ETH IP (512)

Page 21: 1 Introduction to Computer Networks University of Ilam By: Dr. Mozafar Bag-Mohammadi Internetworking

21

Example (cont)

Ident = x Offset = 0

Start of header

0

Rest of header

1400 data bytes

Ident = x Offset = 0

Start of header

1

Rest of header

512 data bytes

Ident = x Offset = 512

Start of header

1

Rest of header

512 data bytes

Ident = x Offset = 1024

Start of header

0

Rest of header

376 data bytes

The packets are fragmented as:

Page 22: 1 Introduction to Computer Networks University of Ilam By: Dr. Mozafar Bag-Mohammadi Internetworking

22

Addressing

Each host in the network is identified by an address having the following property. globally unique hierarchical: network + host

11111111 00010001 10000111 00000000

Network Number Host Number

Page 23: 1 Introduction to Computer Networks University of Ilam By: Dr. Mozafar Bag-Mohammadi Internetworking

23

IPv4 Implementation of Addresses

Thirty Two Bits: 0 8 1

624

11111111 00010001 10000111 00000000

255 013517

255.17.135.0

Dotted Quad notation for “human readability”

Page 24: 1 Introduction to Computer Networks University of Ilam By: Dr. Mozafar Bag-Mohammadi Internetworking

24

Classful Addresses

0nnnnnnn

10nnnnnn nnnnnnnn

nnnnnnnn nnnnnnnn110nnnnn

hhhhhhhh hhhhhhhh hhhhhhhh

hhhhhhhh hhhhhhhh

hhhhhhhh

n = network address bit h = host identifier bit

Class A

Class C

Class B

Page 25: 1 Introduction to Computer Networks University of Ilam By: Dr. Mozafar Bag-Mohammadi Internetworking

25

The Classful Address Space

Class Networks Hosts Share of IPaddress space

A 127 16,777,214 1/2

B 16,384 65,534 1/4

C 2,097,152 254 1/8

Leads to very inefficient allocation of addresses …

Page 26: 1 Introduction to Computer Networks University of Ilam By: Dr. Mozafar Bag-Mohammadi Internetworking

26

IP Addresses

Example:

Class “A” address www.mit.edu18.181.0.31

(18<128 => Class A)

Class “B” address mekong.stanford.edu171.64.74.155

(128<171<128+64 => Class B)

Page 27: 1 Introduction to Computer Networks University of Ilam By: Dr. Mozafar Bag-Mohammadi Internetworking

27

Classless AddressingCIDR

A B C D0 232-1

0 232-1

128.9/16

128.9.0.0

216

142.12/19

65/8

Classless:

Class-based:

128.9.16.14

Page 28: 1 Introduction to Computer Networks University of Ilam By: Dr. Mozafar Bag-Mohammadi Internetworking

28

Classless AddressingCIDR

0 232-1

128.9/16

128.9.16.14

128.9.16/20128.9.176/20

128.9.19/24

128.9.25/24

Most specific route = “longest matching prefix”

Page 29: 1 Introduction to Computer Networks University of Ilam By: Dr. Mozafar Bag-Mohammadi Internetworking

29

Forwarding Datagrams

“Network ID” uniquely identifies a physical network. All hosts and routers sharing a Network ID share

same physical network. Every datagram contains a destination

address. Is the datagram for a host on directly

attached network? If no, consult forwarding table to find next-hop. If only one next-hop, can use default routing.

Page 30: 1 Introduction to Computer Networks University of Ilam By: Dr. Mozafar Bag-Mohammadi Internetworking

30

Forwarding Datagrams

128.9/16128.9.16/20

128.9.176/20

128.9.19/24128.9.25/24

142.12/19

65/8

Prefix Port

3227213

128.17.14.1128.17.14.1

128.17.20.1

128.17.10.1128.17.14.1

128.17.16.1

128.17.16.1

Next-hop

R1

R2

R3

R4

12

3

128.17.20.1

128.17.16.1

e.g. 128.9.16.14 => Port 2

128.17.14.1

Page 31: 1 Introduction to Computer Networks University of Ilam By: Dr. Mozafar Bag-Mohammadi Internetworking

31

Default Routing

R1

R2 R3 R4 R5

DefaultRouting

RequiresRoutingTable

DefaultRouting

Page 32: 1 Introduction to Computer Networks University of Ilam By: Dr. Mozafar Bag-Mohammadi Internetworking

32

Inside a Router

ForwardingDecision

ForwardingDecision

ForwardingDecision

Forwarding Table

Forwarding

Table

ForwardingTable

Interconnect

OutputScheduling

1.

2.

3.

Page 33: 1 Introduction to Computer Networks University of Ilam By: Dr. Mozafar Bag-Mohammadi Internetworking

33

IP Forwarding Process

Forwarding Process

IP Forwarding Table Router

1. Remove a packet from an input queue

3. Match packet’s destination to a table entry

2. Check for sanity, decrement TTL field

4. Place packet on correct output queue

If queuesget full, just

drop packets!

If queuesget full, just

drop packets!

Page 34: 1 Introduction to Computer Networks University of Ilam By: Dr. Mozafar Bag-Mohammadi Internetworking

34

Address Translation

Map IP addresses into physical addresses destination host next hop router

ARP table of IP to physical address bindings broadcast request if IP address not in table target machine responds with its physical

address table entries are discarded if not refreshed

Page 35: 1 Introduction to Computer Networks University of Ilam By: Dr. Mozafar Bag-Mohammadi Internetworking

35

ARP Details Request Format

HardwareType: type of physical network (e.g., Ethernet)

ProtocolType: type of higher layer protocol (e.g., IP) HLEN & PLEN: length of physical and protocol

addresses Operation: request or response Source/Target-Physical/Protocol addresses

Notes table entries timeout in about 10 minutes update table with source when you are the target update table if already have an entry do not refresh table entries upon reference

Page 36: 1 Introduction to Computer Networks University of Ilam By: Dr. Mozafar Bag-Mohammadi Internetworking

36

ARP Packet Format

TargetHardwareAddr (bytes 2 – 5)

TargetProtocolAddr (bytes 0 – 3)

SourceProtocolAddr (bytes 2 – 3)

Hardware type = 1 ProtocolT ype = 0x0800

SourceHardwareAddr (bytes 4 – 5)

TargetHardwareAddr (bytes 0 – 1)

SourceProtocolAddr (bytes 0 – 1)

HLen = 48 PLen = 32 Operation

SourceHardwareAddr (bytes 0 – 3)

0 8 16 31

Page 37: 1 Introduction to Computer Networks University of Ilam By: Dr. Mozafar Bag-Mohammadi Internetworking

37

Internet Control Message Protocol (ICMP) Echo (ping) Redirect (from router to source host) Destination unreachable (protocol, port, or

host) TTL exceeded (so datagrams don’t cycle

forever) Checksum failed Reassembly failed Cannot fragment