Transport Layer
(end-to-end communication)
Prepared by, Dr.T.Thendral, Assistant
Professor, SRCW
Objective
• Elements of Transport Protocols
• Internet Transport Protocols: TCP
Prepared by, Dr.T.Thendral, Assistant
Professor, SRCW
Elements of Transport
Protocols
• The transport service- Transport protocol used
between the two transport entities
• As all other layers, this layer communicates with
its peer Transport layer of the remote host
• Transport layer offers peer-to-peer and end-to-
end connection between two processes on
remote hosts.
• Transport layer takes data from upper layer (i.e.
Application layer) and then breaks it into smaller
size segments, numbers each byte, and hands
over to lower layer (Network Layer) for delivery.
Prepared by, Dr.T.Thendral, Assistant
Professor, SRCW
Establishing A Connection
Prepared by, Dr.T.Thendral, Assistant
Professor, SRCW
Addressing
• Process wishes to set up a connection to a
remote application process, it must specify
which one to connect to
• The method normally used is to define
transport addresses to which processes can
listen for connection requests
• In the Internet, these end points are called
ports
Prepared by, Dr.T.Thendral, Assistant
Professor, SRCW
• We will use the generic term TSAP, (Transport
Service Access Point)
• The analogous end points in the network layer
(i.e., network layer addresses) are then called
NSAPs.
• IP addresses are examples of NSAPs
• The relationship between the NSAP, TSAP and
transport connection illustrates in figure
Prepared by, Dr.T.Thendral, Assistant
Professor, SRCW
Prepared by, Dr.T.Thendral, Assistant
Professor, SRCW
A possible scenario for a transport
connection is as follows
1. A time of day server process on host 2 attaches itself to TSAP
1522 to wait for an incoming call
TSAP is outside the networking model and
depends entirely on the local operating system
A call such as our LISTEN might be used
2. An application process on host 1 wants to find out the time-of-
day.
So it issues a CONNECT request specifying TSAP 1208 as the source
and TSAP 1522 as the destination
3. The application process then sends over a request for the time
4. The time server process responds with the current time
5. The transport connection is then released
Prepared by, Dr.T.Thendral, Assistant
Professor, SRCW
• Instead - conceivable server listening at a well-known TSAP, each
machine that wishes to offer services to acts as a proxy for less
heavily used servers
• It listens to a set of ports at the same time, waiting for a connection
request
• Potential users of a service begin by doing a CONNECT request,
specifying the TSAP address of the service they want.
• If no server is waiting for them, they get a connection to the
process server 6.9(a)
• After it gets the incoming request, the process server spawns the
requested server, allowing it to inherit the existing connection with
the user.
• The new server then does the requested work, while the process
server goes back to listening for new requests, as shown in Fig. 6-
9(b)
Prepared by, Dr.T.Thendral, Assistant
Professor, SRCW
Time of day server
Prepared by, Dr.T.Thendral, Assistant
Professor, SRCW
• An alternative scheme is often used
• In this model, there exists a special process called
a name server or sometimes a directory server
• To find the TSAP address corresponding to a given
service name, such as ''time of day,'' a user sets
up a connection to the name server
• In this model, when a new service is created, it
must register itself with the name server, giving
both its service name (typically, an ASCII string)
and its TSAP
Prepared by, Dr.T.Thendral, Assistant
Professor, SRCW
Connection Establishment
• Transport entity to just send a CONNECTION
REQUEST TPDU to the destination and wait for
a CONNECTION ACCEPTED reply
• Packet lifetime can be restricted to a known
maximum using one (or more) of the following
techniques:
• 1. Restricted subnet design
• 2. Putting a hop counter in each packet
• 3. Time stamping each packet
Prepared by, Dr.T.Thendral, Assistant
Professor, SRCW
• The Transaction Protocol Data Unit (TPDU)
• Figure 6-11. Three protocol scenarios for
establishing a connection using a three-way
handshake. CR denotes CONNECTION REQUEST.
• (a) Normal operation.
• (b) Old duplicate CONNECTION REQUEST
appearing out of nowhere.
• (c) Duplicate CONNECTION REQUEST and
duplicate ACK.
Prepared by, Dr.T.Thendral, Assistant
Professor, SRCW
Prepared by, Dr.T.Thendral, Assistant
Professor, SRCW
DISCONNECT
Prepared by, Dr.T.Thendral, Assistant
Professor, SRCW
• Figure 6-14. Four protocol scenarios for
releasing a connection.
• (a) Normal case of three-way handshake
• (b) Final ACK lost
• (c) Response lost
• (d) Response lost and subsequent DRs lost
Prepared by, Dr.T.Thendral, Assistant
Professor, SRCW
Prepared by, Dr.T.Thendral, Assistant
Professor, SRCW
Prepared by, Dr.T.Thendral, Assistant
Professor, SRCW
Flow Control and Buffering
• The network service is unreliable, the sender
must buffer all TPDUs sent, just as in the data
link layer
Prepared by, Dr.T.Thendral, Assistant
Professor, SRCW
Prepared by, Dr.T.Thendral, Assistant
Professor, SRCW
Multiplexing
• Multiplexing - connections, virtual circuits,
and physical links plays a role in several layers
of the network architecture
• In the transport layer the need for
multiplexing can arise in a number of ways
• Note: Multiplexing is a technique used to
combine and send the multiple data streams
over a single medium
Prepared by, Dr.T.Thendral, Assistant
Professor, SRCW
Prepared by, Dr.T.Thendral, Assistant
Professor, SRCW
• If only one network address is available on a
host, all transport connections on that
machine have to use it
• When a TPDU comes in, some way is needed
to tell which process to give it to
• This situation called upward multiplexing
Prepared by, Dr.T.Thendral, Assistant
Professor, SRCW
• If a user needs more bandwidth than one
virtual circuit can provide, a way out is to open
multiple network connections and distribute
the traffic among them on a round-robin
basis, as indicated in Fig. 6-17(b)
• This modus operandi is called downward
multiplexing
Prepared by, Dr.T.Thendral, Assistant
Professor, SRCW
Crash Recovery
Prepared by, Dr.T.Thendral, Assistant
Professor, SRCW
• Hosts and routers are subject to crashes, recovery
from these crashes becomes an issue
• Three events are possible at the server:
• sending an acknowledgement (A)
• writing to the output process (W) and crashing
(C)
• The three events can occur in six different
orderings: AC(W), AWC, C(AW), C(WA), WAC, and
WC(A), where the parentheses are used to
indicate that neither A nor W can follow C
Prepared by, Dr.T.Thendral, Assistant
Professor, SRCW
Crash Recovery
Prepared by, Dr.T.Thendral, Assistant
Professor, SRCW
Summary
• Elements of Transport Protocols
– Establishing A Connection
– Addressing
– A possible scenario for a transport connection is as follows
– Time of day server
– Connection Establishment
– DISCONNECT
– Flow Control and Buffering
– Multiplexing
– Crash Recovery
Prepared by, Dr.T.Thendral, Assistant
Professor, SRCW

Transport Layer.pptx

  • 1.
    Transport Layer (end-to-end communication) Preparedby, Dr.T.Thendral, Assistant Professor, SRCW
  • 2.
    Objective • Elements ofTransport Protocols • Internet Transport Protocols: TCP Prepared by, Dr.T.Thendral, Assistant Professor, SRCW
  • 3.
    Elements of Transport Protocols •The transport service- Transport protocol used between the two transport entities • As all other layers, this layer communicates with its peer Transport layer of the remote host • Transport layer offers peer-to-peer and end-to- end connection between two processes on remote hosts. • Transport layer takes data from upper layer (i.e. Application layer) and then breaks it into smaller size segments, numbers each byte, and hands over to lower layer (Network Layer) for delivery. Prepared by, Dr.T.Thendral, Assistant Professor, SRCW
  • 4.
    Establishing A Connection Preparedby, Dr.T.Thendral, Assistant Professor, SRCW
  • 5.
    Addressing • Process wishesto set up a connection to a remote application process, it must specify which one to connect to • The method normally used is to define transport addresses to which processes can listen for connection requests • In the Internet, these end points are called ports Prepared by, Dr.T.Thendral, Assistant Professor, SRCW
  • 6.
    • We willuse the generic term TSAP, (Transport Service Access Point) • The analogous end points in the network layer (i.e., network layer addresses) are then called NSAPs. • IP addresses are examples of NSAPs • The relationship between the NSAP, TSAP and transport connection illustrates in figure Prepared by, Dr.T.Thendral, Assistant Professor, SRCW
  • 7.
    Prepared by, Dr.T.Thendral,Assistant Professor, SRCW
  • 8.
    A possible scenariofor a transport connection is as follows 1. A time of day server process on host 2 attaches itself to TSAP 1522 to wait for an incoming call TSAP is outside the networking model and depends entirely on the local operating system A call such as our LISTEN might be used 2. An application process on host 1 wants to find out the time-of- day. So it issues a CONNECT request specifying TSAP 1208 as the source and TSAP 1522 as the destination 3. The application process then sends over a request for the time 4. The time server process responds with the current time 5. The transport connection is then released Prepared by, Dr.T.Thendral, Assistant Professor, SRCW
  • 9.
    • Instead -conceivable server listening at a well-known TSAP, each machine that wishes to offer services to acts as a proxy for less heavily used servers • It listens to a set of ports at the same time, waiting for a connection request • Potential users of a service begin by doing a CONNECT request, specifying the TSAP address of the service they want. • If no server is waiting for them, they get a connection to the process server 6.9(a) • After it gets the incoming request, the process server spawns the requested server, allowing it to inherit the existing connection with the user. • The new server then does the requested work, while the process server goes back to listening for new requests, as shown in Fig. 6- 9(b) Prepared by, Dr.T.Thendral, Assistant Professor, SRCW
  • 10.
    Time of dayserver Prepared by, Dr.T.Thendral, Assistant Professor, SRCW
  • 11.
    • An alternativescheme is often used • In this model, there exists a special process called a name server or sometimes a directory server • To find the TSAP address corresponding to a given service name, such as ''time of day,'' a user sets up a connection to the name server • In this model, when a new service is created, it must register itself with the name server, giving both its service name (typically, an ASCII string) and its TSAP Prepared by, Dr.T.Thendral, Assistant Professor, SRCW
  • 12.
    Connection Establishment • Transportentity to just send a CONNECTION REQUEST TPDU to the destination and wait for a CONNECTION ACCEPTED reply • Packet lifetime can be restricted to a known maximum using one (or more) of the following techniques: • 1. Restricted subnet design • 2. Putting a hop counter in each packet • 3. Time stamping each packet Prepared by, Dr.T.Thendral, Assistant Professor, SRCW
  • 13.
    • The TransactionProtocol Data Unit (TPDU) • Figure 6-11. Three protocol scenarios for establishing a connection using a three-way handshake. CR denotes CONNECTION REQUEST. • (a) Normal operation. • (b) Old duplicate CONNECTION REQUEST appearing out of nowhere. • (c) Duplicate CONNECTION REQUEST and duplicate ACK. Prepared by, Dr.T.Thendral, Assistant Professor, SRCW
  • 14.
    Prepared by, Dr.T.Thendral,Assistant Professor, SRCW
  • 15.
    DISCONNECT Prepared by, Dr.T.Thendral,Assistant Professor, SRCW
  • 16.
    • Figure 6-14.Four protocol scenarios for releasing a connection. • (a) Normal case of three-way handshake • (b) Final ACK lost • (c) Response lost • (d) Response lost and subsequent DRs lost Prepared by, Dr.T.Thendral, Assistant Professor, SRCW
  • 17.
    Prepared by, Dr.T.Thendral,Assistant Professor, SRCW
  • 18.
    Prepared by, Dr.T.Thendral,Assistant Professor, SRCW
  • 19.
    Flow Control andBuffering • The network service is unreliable, the sender must buffer all TPDUs sent, just as in the data link layer Prepared by, Dr.T.Thendral, Assistant Professor, SRCW
  • 20.
    Prepared by, Dr.T.Thendral,Assistant Professor, SRCW
  • 21.
    Multiplexing • Multiplexing -connections, virtual circuits, and physical links plays a role in several layers of the network architecture • In the transport layer the need for multiplexing can arise in a number of ways • Note: Multiplexing is a technique used to combine and send the multiple data streams over a single medium Prepared by, Dr.T.Thendral, Assistant Professor, SRCW
  • 22.
    Prepared by, Dr.T.Thendral,Assistant Professor, SRCW
  • 23.
    • If onlyone network address is available on a host, all transport connections on that machine have to use it • When a TPDU comes in, some way is needed to tell which process to give it to • This situation called upward multiplexing Prepared by, Dr.T.Thendral, Assistant Professor, SRCW
  • 24.
    • If auser needs more bandwidth than one virtual circuit can provide, a way out is to open multiple network connections and distribute the traffic among them on a round-robin basis, as indicated in Fig. 6-17(b) • This modus operandi is called downward multiplexing Prepared by, Dr.T.Thendral, Assistant Professor, SRCW
  • 25.
    Crash Recovery Prepared by,Dr.T.Thendral, Assistant Professor, SRCW
  • 26.
    • Hosts androuters are subject to crashes, recovery from these crashes becomes an issue • Three events are possible at the server: • sending an acknowledgement (A) • writing to the output process (W) and crashing (C) • The three events can occur in six different orderings: AC(W), AWC, C(AW), C(WA), WAC, and WC(A), where the parentheses are used to indicate that neither A nor W can follow C Prepared by, Dr.T.Thendral, Assistant Professor, SRCW
  • 27.
    Crash Recovery Prepared by,Dr.T.Thendral, Assistant Professor, SRCW
  • 28.
    Summary • Elements ofTransport Protocols – Establishing A Connection – Addressing – A possible scenario for a transport connection is as follows – Time of day server – Connection Establishment – DISCONNECT – Flow Control and Buffering – Multiplexing – Crash Recovery Prepared by, Dr.T.Thendral, Assistant Professor, SRCW