transport layer

0.0(0)
studied byStudied by 0 people
GameKnowt Play
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
Card Sorting

1/24

encourage image

There's no tags or description

Looks like no tags are added yet.

Study Analytics
Name
Mastery
Learn
Test
Matching
Spaced

No study sessions yet.

25 Terms

1
New cards

what transport layer does

  • ensure reliable or fast delivery of data for a process in a host to a process in another host

  • responsible for delivering data between apps running on different host

  • responsible for determining which app this data is for

    • when you send an email across the world transport layer gives you confidence that email will land in their inbox regardless of chaos within network layer

  • independent of physical layer

2
New cards

similarities and dif between data link and transport

  • coordinates end to end communication for individual apps or nodes (flow control)

  • but DL both nodes are connected via physical channel and transport connected via the whole internet

3
New cards

what is a transport entity

  • software or hardware component responsible for implementing transport layer services (e.g. TCP)

  • handles end to end delivery of data between apps on different systems

located in the node commonly in OS kernel

  • OR can be in: user process, LIb package bound into network apps, or NIC

4
New cards

transport layer functions - addressing

  • addressing: which app/server on a remote host to connect

    • what kind of request

    • assign a port number to an application

TSAP:

Fixed port: popular applications use the same TSAP address (permanently) on every host i.e. well known ports (port 80 for HTTP)

when services don’t have fixed port (ways to handle dynamic port:

  • initial connection protocol: a special server acts as a proxy that listens on a well known port and waits for incoming client request

    • when client connects the proxy, identifies the service need

    • forwards the request to the correct app (on a different port)

    • so less used services dont have to each listen to a port

  • directory server (name server)

    • listens on known TSAP e.g. port 8000

    • client will then connect here and ask which port running e.g. chat service

    • server then replies with actual IP + port

    • client disconnects from name server and connects directly to TSAP

5
New cards

functions - connection establishment

  • send a connection request

    • e.g. type web browser will send request to server

  • wait for connection accepted (CA)

  • network can lose, store, and duplicate packets

    • e.g. when you lose connection info its probably not lost but stored in a router, since no ACK packet resent but router resends (duplicate)

    • 2 connections can open which is very damaging

6
New cards

duplicate solutions

  • restrict packet lifetime

  • restrict subnet design (e.g. not have such a large one)

  • put a hop counter in each packet (prevent loops)

  • time-stamp each packet

  • need to ensure al tdpu dead as well as ACKs before using the ID (sequence #)

    • ensures old copies still floating around network are ignored and wont interfere with new connections

  • wait a time after a packet has been sent

    • ensure all traces of packet + acks are gone

      T = some small multiple of the true max packet lifetime

    • e.g. if a packet can survive 60 s maybe wait 120 s

7
New cards

3 way handshake tomlinson

  • host 1 send CR with sequence number x

  • host 2 send ACK with their sequence number

  • host 1 send data and ACK host 2 sequence number

handles duplicate by:

  • if request lingers and arrive late it will no longer be valid

  • old dupe arrives at host 2 but host doesn’t know and sends ACK

  • host 1 rejects and lets 2 know it is not longer required

duplicate CR and ACK

  • initial sequence number prev ack will be wrong oen so connection will be abandoned

8
New cards

connection release

  • asymm release

    • either user or host can issue a disconnect

    • rather abrupt and can result in data loss

  • sym release

    • 4 way handshake

    • both ends can initiate release independently but both side must ACK DR and complete release process

    • send both fin and ack on both sides before CR

9
New cards

problems with symmetric release

  • not foolproof - 2 army problem

    • illustrates the challenges of achieving consensus or coordination between 2 parties over an unreliable channel

    • how do they know the final ACK is reliable? can result in one half of a connection remaining open

    • deadlock → a sends message, b receives and sends ACK, a wonders did B confirmation get through (cant trust ack), B wonders in A knows he got the message infinite confirmation needed for absolute certainty

    • use timers or acks to timers

10
New cards

flow control

  • similar to DL by using sliding window

  • use a dynamic buffer management (variable sized window) → decouple buffering from ACK

  • host memory increase does not mean faster speed

    • subnets carrying capacity becomes bottleneck

  • so instead use base flow control on subnet’s carrying capacity not just receiver’s buffer

11
New cards

multiplexing

  • gathering data from multiple app processes of a sender, enveloping the data with a header, and sending them as a whole to intended receiver

  • upward: multiple transport connections mapped to one network IP connection, save resource by sending several app sessions over one IP connection

  • downward: one transport connections split into multiple network connections (used for load balancing, speed, and fault tolerance

12
New cards

crash recovery

13
New cards
14
New cards
15
New cards
16
New cards
17
New cards
18
New cards
19
New cards
20
New cards
21
New cards
22
New cards
23
New cards
24
New cards
25
New cards