31
IP Basics

IP Basics

Embed Size (px)

DESCRIPTION

IP Basics. IP. ICMP. Network. RoutingTables. ARP. Link. Physical. IP Basics. IP encapsulates TCP IP packets travel through many different routers (hops) before reaching it’s destination - PowerPoint PPT Presentation

Citation preview

IP Basics

Physical

Link

Network

IP

ARP

ICMP

RoutingTables

IP Basics

• IP encapsulates TCP

• IP packets travel through many different routers (hops) before reaching it’s destination

• MTU variation at the physical layer requires IP to fragment the message into smaller units along the way

• Reassembly is an option at each hop.

• IP does NOT guarantee delivery!

IP Fragmentation

R R R1000 b 500 b 500 b 250 b 250 b 250 b 250 b

Every link has the potential to dictate adjusting size of frames.

It is possible to reassemble at any point.

R R R1000 b 500 b 500 b 1000 b

What if frames are lost?

R R250 b 250 b 250 b 250 b1234

ReceiveComputer

Receive computer will hold the first 2 frames awaiting the 3rd.

After a period of time, a timer expires and IP level passes the 500 bytes up and stops looking for the other pieces.

TCP (NOT IP) then will acknowledge receipt of 500 more bytes to the sending TCP layer. If the first frame is lost, NONE are passed up to TCP. More on TCP later.

IP Frame formatFragmentation Fields

VersionHeaderLength

Type ofService

Packet Length

Flags Fragment OffsetIdentification

Time To Live Protocol Checksum

Source IP Address

Destination IP Address

Options

DATA

32 bitsEachline

Fragmentation and the FrameFig 7.34

4000 byte frame

router

FragId 345FragOffset=0MoreFragments Bit=1Size->1400 byes

FragId 345FragOffset=175MoreFragments Bit=1Size-> 1400 bytes

FragId 345FragOffset=350MoreFragments Bit=0Size->1200 bytes

FragOffset should be multiplied by 8 (8x175=1400)

IP Frame format

VersionHeaderLength

Type ofService

Packet Length

Flags Fragment OffsetIdentification

Time To Live Protocol Checksum

Source IP Address

Destination IP Address

Options

DATA

32 bitsEachline

IP Summary• Fragmentation results in delivery of frames which

are potentially smaller than the original transmission.

• Some of the frames can be lost• If a message is fragmented and frames are lost, all

frames up to the first lost frame are passed up to the receiving TCP and all subsequent frames are dropped.

• TCP views this as a stream and is unaware of the loss of frames. It just accepts the next “n” bytes, acks the receipt, and waits for subsequent data.

TCP

End To End Delivery

Physical

Link

Network

TransportTCP UDP

TCP basics• Connection-oriented

– Sets up the connection prior to data transmission• SYN and 3-way handshake

– Guarantees delivery of data• Sender holds a copy of the data for retransmission if

necessary• Receiver ACKS specific byte positions in the stream so

sender can resend from any byte position

• Encapsulated by IP• Receiver tells sender it’s receive window size

to limit rate of data arrival (flow control)

Consider How TCP and IP Work Together

Transport

Network(IP)

Physical

Network(IP)

Physical

1000

1000

2000

Transport

Network(IP)

Physical

2501

500

2502

2503 2504

(Send 2000 bytes)

(ACK 500 bytes)

TCP handling of fragmentation

Up to destination port

Transport

Network(IP)

Physical

Network(IP)

Physical

1000

1000

2000

Transport

Network(IP)

Physical

2501

500

2502

2503 2504

(Send 2000 bytes)

(ACK 500 bytes)

TCP handling of fragmentation

Up to destination port

Transport

Network(IP)

Physical

Network(IP)

Physical

1000

1000

2000

Transport

Network(IP)

Physical

2501

500

2502

2503 2504

(Send 2000 bytes)

(ACK 500 bytes)

TCP handling of fragmentation

Up to destination port

Transport

Network(IP)

Physical

Network(IP)

Physical

1000

1000

2000

Transport

Network(IP)

Physical

2501

500

2502

2503 2504

(Send 2000 bytes)

(ACK 500 bytes)

TCP handling of fragmentation

Up to destination port

What does the TCP frame look like?

Source Port

Destination Port

Length Checksum

Data

And after TCP is encapsulated in IP?

IP Header IP Trailer

TCP

More TCP Issues

TCP handshake/setup

time

Host A Host B

Ack 0, Syn 1

Ack 1, Syn 0

Ack 1, Syn 1

Ack 1, Syn 0... setup

data

TCP Frame

Source Port Destination Port

Sequence Number

HeaderLength Flags

Acknowledgment Number

Urgent Pointer

Options

DATA

Checksum

Window

Flow Control w/TCP

Data … s=101, a=701

Data … s=201, a=701

Data … s=701, a=301, c=0

Data … s=801, a=301, c=200

Data … s=301, a=901

Data … s=401, a=901

A B

B says STOP

B says GO(up to 200)

UDP Issues

UDP basics• At transport layer as alternative to TCP• No connection establishment• No Guaranteed Delivery• Practically adds nothing to IP• Application must guarantee delivery if

necessary• TCP and timing is hard for you to

implement at the application layer• UDP runs faster if delivery is not required

to be error-free.

ICMP

ICMP Basics

• Lower than IP

• A support protocol for routing info/problems

• Doesn’t use ports

• Used in ping

• Frequently used to deny service.. problematic – ping of death (too large message), and– denial of service (ping flood)

physical

IP

TCP/UDP

ICMP

ICMP Message types

• Echo Request

• Echo Response

• Time Exceeded

• Destination Unreachable

• Redirect

IP Tunnelling

Transport

(IP)

Physical

Network(IP)

Physical

Appletalk

IntermediateRouters only

See IP

RouterCAN doAT in IP

ReceivingRouter

InsideNetwork

(AT)

ConnectedNetwork

(AT)

Transport

(IP)

Physical

Appletalk

Transport

(IP)

Physical

Appletalk

IP Tunnelling at one end

Physical

Appletalk

Physical

Appletalk

Appletalk to local Appletalk to non-local

ATIP

ATIP

Route to DestinationAs IP

Summary