41
The Transport Layer Chapter 4 1/4/2017 Mr Satyendra Mohan Srivastava 1

Transport layer features and functionality

Embed Size (px)

Citation preview

Page 1: Transport layer features and functionality

The Transport Layer

Chapter 4

1/4/2017 Mr Satyendra Mohan Srivastava 1

Page 2: Transport layer features and functionality

The Transport Service• Services Provided to the Upper Layers• Transport Service Primitives• Berkeley Sockets• An Example of Socket Programming:

– An Internet File Server

1/4/2017 Mr Satyendra Mohan Srivastava 2

Page 3: Transport layer features and functionality

Services Provided to the Upper Layers

The network, transport, and application layers.

1/4/2017 Mr Satyendra Mohan Srivastava 3

Page 4: Transport layer features and functionality

Transport Service Primitives

The primitives for a simple transport service.

1/4/2017 Mr Satyendra Mohan Srivastava 4

Page 5: Transport layer features and functionality

Transport Service Primitives

The nesting of TPDUs, packets, and frames.

1/4/2017 Mr Satyendra Mohan Srivastava 5

Page 6: Transport layer features and functionality

Transport Service Primitives

A state diagram for a simple connection management scheme. Transitions labeled in italics are caused by packet arrivals. The solid lines show the client's state sequence. The dashed lines show the server's state sequence.

1/4/2017 Mr Satyendra Mohan Srivastava 6

Page 7: Transport layer features and functionality

Berkeley Sockets

The socket primitives for TCP.

1/4/2017 Mr Satyendra Mohan Srivastava 7

Page 8: Transport layer features and functionality

Elements of Transport Protocols

• Addressing• Connection Establishment• Connection Release• Flow Control and Buffering• Multiplexing• Crash Recovery

1/4/2017 Mr Satyendra Mohan Srivastava 8

Page 9: Transport layer features and functionality

Transport Protocol

(a) Environment of the data link layer.(b) Environment of the transport layer.

1/4/2017 Mr Satyendra Mohan Srivastava 9

Page 10: Transport layer features and functionality

Addressing

TSAPs, NSAPs and transport connections.

1/4/2017 Mr Satyendra Mohan Srivastava 10

Page 11: Transport layer features and functionality

Connection Establishment

How a user process in host 1 establishes a connection with a time-of-day server in host 2.

1/4/2017 Mr Satyendra Mohan Srivastava 11

Page 12: Transport layer features and functionality

Connection Establishment

(a) TPDUs may not enter the forbidden region.(b) The resynchronization problem.

1/4/2017 Mr Satyendra Mohan Srivastava 12

Page 13: Transport layer features and functionality

Connection Establishment

Three protocol scenarios for establishing a connection using a three-way handshake. CR denotes CONNECTION REQUEST. (a) Normal operation, (b) Old CONNECTION REQUEST appearing out of nowhere. (c) Duplicate CONNECTION REQUEST and duplicate ACK.

1/4/2017 Mr Satyendra Mohan Srivastava 13

Page 14: Transport layer features and functionality

Connection Release

Abrupt disconnection with loss of data.

1/4/2017 Mr Satyendra Mohan Srivastava 14

Page 15: Transport layer features and functionality

Connection Release

The two-army problem.

1/4/2017 Mr Satyendra Mohan Srivastava 15

Page 16: Transport layer features and functionality

Connection Release

Four protocol scenarios for releasing a connection. (a) Normal case of a three-way handshake. (b) final ACK lost.

6-14, a, b

1/4/2017 Mr Satyendra Mohan Srivastava 16

Page 17: Transport layer features and functionality

Connection Release

(c) Response lost. (d) Response lost and subsequent DRs lost.

6-14, c,d

1/4/2017 Mr Satyendra Mohan Srivastava 17

Page 18: Transport layer features and functionality

Multiplexing

(a) Upward multiplexing. (b) Downward multiplexing.

1/4/2017 Mr Satyendra Mohan Srivastava 18

Page 19: Transport layer features and functionality

Crash Recovery

Different combinations of client and server strategy.

1/4/2017 Mr Satyendra Mohan Srivastava 19

Page 20: Transport layer features and functionality

A Simple Transport Protocol

• The Example Service Primitives• The Example Transport Entity• The Example as a Finite State Machine

1/4/2017 Mr Satyendra Mohan Srivastava 20

Page 21: Transport layer features and functionality

The Example Transport Entity

The network layer packets used in our example.

1/4/2017 Mr Satyendra Mohan Srivastava 21

Page 22: Transport layer features and functionality

The Example Transport EntityEach connection is in one of seven states:1. Idle – Connection not established yet.2. Waiting – CONNECT has been executed, CALL REQUEST sent.3. Queued – A CALL REQUEST has arrived; no LISTEN yet.4. Established – The connection has been established.5. Sending – The user is waiting for permission to send a packet.6. Receiving – A RECEIVE has been done.7. DISCONNECTING – a DISCONNECT has been done locally.

1/4/2017 Mr Satyendra Mohan Srivastava 22

Page 23: Transport layer features and functionality

The Internet Transport Protocols: UDP

• Introduction to UDP• Remote Procedure Call• The Real-Time Transport Protocol

1/4/2017 Mr Satyendra Mohan Srivastava 23

Page 24: Transport layer features and functionality

Introduction to UDP

The UDP header.

1/4/2017 Mr Satyendra Mohan Srivastava 24

Page 25: Transport layer features and functionality

Remote Procedure Call

Steps in making a remote procedure call. The stubs are shaded.

1/4/2017 Mr Satyendra Mohan Srivastava 25

Page 26: Transport layer features and functionality

The Real-Time Transport Protocol

(a) The position of RTP in the protocol stack. (b) Packet nesting.

1/4/2017 Mr Satyendra Mohan Srivastava 26

Page 27: Transport layer features and functionality

The Real-Time Transport Protocol

The RTP header.

1/4/2017 Mr Satyendra Mohan Srivastava 27

Page 28: Transport layer features and functionality

The Internet Transport Protocols: TCP• Introduction to TCP• The TCP Service Model• The TCP Protocol• The TCP Segment Header• TCP Connection Establishment• TCP Connection Release• TCP Connection Management Modeling• TCP Transmission Policy• TCP Congestion Control• TCP Timer Management• Wireless TCP and UDP• Transactional TCP

1/4/2017 Mr Satyendra Mohan Srivastava 28

Page 29: Transport layer features and functionality

The TCP Service Model

Some assigned ports.

Port Protocol Use21 FTP File transfer23 Telnet Remote login25 SMTP E-mail69 TFTP Trivial File Transfer Protocol79 Finger Lookup info about a user80 HTTP World Wide Web

110 POP-3 Remote e-mail access119 NNTP USENET news

1/4/2017 Mr Satyendra Mohan Srivastava 29

Page 30: Transport layer features and functionality

The TCP Service Model

(a) Four 512-byte segments sent as separate IP datagrams.(b) The 2048 bytes of data delivered to the application in a single READ

CALL.

1/4/2017 Mr Satyendra Mohan Srivastava 30

Page 31: Transport layer features and functionality

The TCP Segment Header

TCP Header.

1/4/2017 Mr Satyendra Mohan Srivastava 31

Page 32: Transport layer features and functionality

The TCP Segment Header

The pseudoheader included in the TCP checksum.

1/4/2017 Mr Satyendra Mohan Srivastava 32

Page 33: Transport layer features and functionality

TCP Connection Establishment

(a) TCP connection establishment in the normal case.(b) Call collision.

6-31

1/4/2017 Mr Satyendra Mohan Srivastava 33

Page 34: Transport layer features and functionality

TCP Connection Management Modeling

The states used in the TCP connection management finite state machine.

1/4/2017 Mr Satyendra Mohan Srivastava 34

Page 35: Transport layer features and functionality

TCP Transmission Policy

Window management in TCP.

1/4/2017 Mr Satyendra Mohan Srivastava 35

Page 36: Transport layer features and functionality

TCP Transmission Policy

Silly window syndrome.

1/4/2017 Mr Satyendra Mohan Srivastava 36

Page 37: Transport layer features and functionality

TCP Congestion Control

(a) A fast network feeding a low capacity receiver.(b) A slow network feeding a high-capacity receiver.

1/4/2017 Mr Satyendra Mohan Srivastava 37

Page 38: Transport layer features and functionality

Transitional TCP

(a) RPC using normal TPC.(b) RPC using T/TCP.

1/4/2017 Mr Satyendra Mohan Srivastava 38

Page 39: Transport layer features and functionality

Performance Issues• Performance Problems in Computer Networks• Network Performance Measurement• System Design for Better Performance• Fast TPDU Processing• Protocols for Gigabit Networks

1/4/2017 Mr Satyendra Mohan Srivastava 39

Page 40: Transport layer features and functionality

References

[1] A. S. Tanenbaum, “Computer Network”, Pearson Education

[2] Forouzen, “Data Communication and Networking”, TMH

1/4/2017 Mr Satyendra Mohan, JIT Barabanki 40

Page 41: Transport layer features and functionality

1/4/2017 Mr Satyendra Mohan Srivastava 41