transport layer

45
Transport Layer Shashikant V. Athawale Assistant Professor Department of Computer Engineering, AISSMS COE ,Pune

Upload: shashikant-athawale

Post on 15-Jan-2017

607 views

Category:

Engineering


0 download

TRANSCRIPT

Page 1: Transport Layer

Transport Layer

Shashikant V. AthawaleAssistant Professor

Department of Computer Engineering, AISSMS COE ,Pune

Page 2: Transport Layer

TCP(Transmission Control Protocol)

Page 3: Transport Layer

●TCP is a connection-oriented protocol; it

creates a virtual connection between two TCPs to send data.

●In addition, TCP uses flow and error control mechanisms at the transport level

Page 4: Transport Layer

TCP/IP Protocol Suite

Page 5: Transport Layer
Page 6: Transport Layer

Stream Delivery

Page 7: Transport Layer

UDP (User Datagram Protocol)

Page 8: Transport Layer

●The User Datagram Protocol (UDP) is

called a connectionless, unreliable transport protocol.

●It does not add anything to the services of IP except to provide process-to-process communication instead of host-to-host communication.

Page 9: Transport Layer

Well known ports used with UDP

Page 10: Transport Layer

User Datagram Format

Page 11: Transport Layer

Socket Programming

Page 12: Transport Layer

Socket●An interface between application

and network●The application creates a socket●Build distributed, client server

applications

Page 13: Transport Layer
Page 14: Transport Layer

TCP Flow Control

Page 15: Transport Layer

Flow Control●Sender won’t overrun receiver’s buffers

by transmitting too much, too fast

●RcvBuffer = size or TCP Receive Buffer

●RcvWindow = amount of spare room in Buffer

Page 16: Transport Layer

Congestion Control

Page 17: Transport Layer

●Informally: “too many sources sending

too much data too fast for network to handle”

●Manifestations:◦lost packets (buffer overflow at routers)◦long delays (queuing in router buffers)

●A highly important problem

Page 18: Transport Layer

End-end congestion control

●No explicit feedback from network

●Congestion inferred from end-system observed loss, delay

●Approach taken by TCP

Page 19: Transport Layer

Network-assisted congestion control

●Routers provide feedback to end systems

◦Single bit indicating congestion (SNA, DECbit, TCP/IP ECN, ATM)

◦Explicit rate sender should send at

Page 20: Transport Layer

Goals of Congestion Control● Throughput

◦Maximize good put◦ the total number of bits end-end

● Fairness◦Give different sessions “equal” share.◦Max-min fairness

⚫Maximize the minimum rate session.◦Single link

⚫Capacity R⚫sessions m⚫Each sessions: R/m

Page 21: Transport Layer

Real Time Transport Protocol

Page 22: Transport Layer

●A session consists of an RTP/RTCP pair

of channels

●Usually works over UDP/IP

●End-to-end protocol

Page 23: Transport Layer

RTP Features◦Multicasting◦Payload type identification◦Time shaping◦Sequencing◦Delivery monitoring

Page 24: Transport Layer

●RTP Issues

◦No QoS guarantees◦No guarantee of packet delivery

●RTP Timestamp (TS) and Sequence Number (SN)◦TS used to order packets in correct timing

order◦SN to detect packet loss◦For a video frame that spans multiple

packets – TS is same but SN is different

Page 25: Transport Layer

●RTCP

◦Synchronize across different media streams

◦Provide feedback on the quality of data using lost packet counts

◦Identify and keep track of participants◦Retransmission requests

Page 26: Transport Layer

SCTP

(Stream Control Transmission Protocol)

Page 27: Transport Layer

●Stream Control Transmission Protocol

(SCTP) is a new reliable, message oriented transport-layer protocol◦Message-oriented, Reliable◦Other innovative features⚫Association, Data transfer/Delivery⚫Fragmentation, Error/Congestion

Control

Page 28: Transport Layer

Multiple stream concept

Page 29: Transport Layer

SCTP vs. TCP ●Control information

◦TCP: part of the header◦SCTP: several types of control chunks

●Data◦TCP: one entity in a TCP segment◦SCTP: several data chunks in a packet

●Option◦TCP: part of the header◦SCTP: handled by defining new chunk

types

Page 30: Transport Layer

●Mandatory part of the header

◦TCP: 20 bytes, SCTP: 12 bytes◦Reason:

⚫TSN in data chunk’s header⚫Ack. # and window size are part of

control chunk⚫No need for header length field ( no ∵

option)⚫No need for an urgent pointer

●Checksum◦TCP: 16 bits, SCTP: 32 bit

Page 31: Transport Layer

●Association identifier

◦TCP: none, SCTP: verification tag◦Multihoming in SCTP

●Sequence number◦TCP: one # in the header◦SCTP: TSN, SI and SSN define each data

chunk◦SYN and FIN need to consume one seq. #◦Control chunks never use a TSN, SI, or

SSN number

Page 32: Transport Layer

SCTP Packet Format

Page 33: Transport Layer

QoS(Quality Of Service)

Page 34: Transport Layer

QoS● Definition: Methods for differentiating traffic and

services● To some, introducing an element of predictability

and consistency into a highly variable best-effort network

● To others, obtaining higher network throughput while maintaining consistent behavior

● Or, offering resources to high-priority service classes at the expense of lower-priority classes (conservation law)

● Or, matching network resources to application demands

Page 35: Transport Layer

Applications●Real-time: voice, video, emergency control,

stock quotes●Non-real-time (or best-effort): telnet, ftp etc●Real-time: - hard with deterministic or guaranteed QoS:

no loss, packet delay less than deadline, difference in delays of 2 packets less than jitter bound

- soft with statistical or probabilistic QoS: no more than x% of packets lost or experience delay greater than deadline

Page 36: Transport Layer

SLA(Service Level Agreement)●Service Level Agreement between client

(subscriber) and network (provider): the network keeps its promise as long as the flow conforms to the traffic specification

●The network must monitor/police/shape incoming traffic

●The shape is important: E.g. a gigabit network contracting with a 100Mbps flow. A big difference between sending one 100Mb packet every second and sending 1Kb packet every 10 microsec.

Page 37: Transport Layer

Differentiated Services

Page 38: Transport Layer

●In DiffServ, flows are aggregated into

classes that receive “treatment” by class.●More complex operations are pushed out

to edge routers and simpler operations done by core routers.

●motivated by:◦scalability, flexibility, and better-than-

best-effort service without RSVP signaling.

Page 39: Transport Layer

●edge functions:

◦packet classification◦packet marking◦traffic conditioning

●core functions:◦forwarding based on per-hop behavior

(PHB) associated with packet’s class

Page 40: Transport Layer

Integrated Services

Page 41: Transport Layer

●IntServ framework was developed within

IETF to provide individualized QoS guarantees to individual sessions.

●provides services on a per flow basis where a flow is a packet stream with common source address, destination address and port number.

●IntServ routers must maintain per flow state information.

Page 42: Transport Layer

Features

◦Reserved Resources⚫the router must know the amount of its

resources currently reserved for on-going sessions.

⚫standard resources: link capacity, router buffers

◦Call Setup⚫A flow requiring QoS guarantees must be

able to reserve sufficient resources at each router on path to ensure QoS requirements are met.

Page 43: Transport Layer

Conclusion●TCP and UDP are explained with packet

formats●Socket is explained in detail●TCP flow control and congestion control

is explained●RTCP, SCTP, QoS , Integrated and

Differentiated services are explained

Page 44: Transport Layer

References●http://www.routeralley.com.●D.E. Comer, Internetworking with

TCP/IP: Principles, Protocols, and Architectures, 4th edition, Prentice Hall, NJ, 2000.

●Data communication and networking by Behrouz A Forouzan

Page 45: Transport Layer

Thank You!!!!!!!