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 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
A n 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 T ransport 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 T he 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
I f 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