Please enable JavaScript.
Coggle requires JavaScript to display documents.
4.1 Explain Transport Layers Protocol - Coggle Diagram
4.1 Explain Transport Layers Protocol
EXPLAIN THE CHARACTERISTICS OF THE TCP AND UDP PROTOCOLS, INCLUDING PORT NUMBERS AND THIER USES.
BET & ANISA
TCP Features
Establishing a Session
Connection-oriented protocol
◦ Ensures the application is ready to receive the data
◦ Negotiate the amount of traffic that can be forwarded at a given time
Same-Order Delivery
Numbering & Sequencing the segments guarantees reassembly into the proper order
Reliable Delivery
-Ensuring that each segment that the source sends arrives at the destination
Flow Contro
Regulate the amount of data the source transmits
TCP Header
Source and Destination Port used to
identify application
Sequence number used for data
reassembly
Acknowledgement number indicates data has been received and ready for next byte from source
Header length – length of TCP segment header
Control bits – purpose and function of TCP segment
Window size – number of bytes that can be accepted at one time
UDP Features
UDP Header
UDP is a stateless protocol – no tracking
Multiple Separate Communications
Users expect to simultaneously receive and send email, view websites and make a VoIP phone call
TCP and UDP manage multiple conversations by using unique identifiers called port
Port Numbers
source Port
Originating application port that is dynamically generated by sending device
Example: Each separate HTTP conversation is tracked based on the source ports
Destination Port
Tell the destination what service is being requested
Example: Port 80 web services are being requested
Port Number Groups
well-known ports(Numbers 0-1023)
These numbers are reserved for services and applications
Registered Ports (Numbers 1024- 49151)
These port numbers are assigned by IANA to a requesting entity to use with specific process or applications
Dynamic or Private Ports (Numbers 49152 - 65535)
.Usually assigned dynamically by the client's OS and used to identity the client application during communication
Socket Pairs
Source and destination
port placed in segment
Segments encapsulated in IP packet
Example: 192.168.1.7:80
Sockets enable multiple processes to be distinguished
source port acts as a return address
Port Number Groups (Cont.)
The netstat command
Network utility that can be
used to verify connections
By default, will attempt to resolve IP addresses to domain names and port numbers to well-known applications
-n option used to display IPs and ports in numerical form
4.1.3 Determine whether high-reliability TCP transmissions, or non-guaranteed UDP transmissions, are best suited for common applications
(Fadzri dan Eric)
TCP Server Process (Eric)
Every application process running on the server has to be configured to use a dynamic port number
There can be many ports open simultaneously on a server, one for each active server application
An individual server can have two services assigned to the same port number within the same transport layer services
A host running two different applications can have both configured to use the same server port
UDP Communication
(FADZRI)
UDP Low Overhead versus Reliability
UDP not connection- oriented
No retransmission
No sequencing
No flow control
Functions not provided by the
transport layer implemented elsewhere
UDP Datagram Reassembly
Application must identify
the proper sequence
Data in order received and
forwards to application
UDP Server Processes and Requests
Provides authentication
Provides authorization
Accounting services
because
To manage user access
UDP Client Processes (Cont.)
UDP Client Processes
Application that use between
TCP or UDP
(FADZRI)
Applications that use TCP
free applications from
having to manage reliability
Applications that use UDP
Three types :
Live video and multimedia
Simple request and reply
Handle reliability themselves
TCP Connection Establishment (Eric)
Step 1 – Initiating client requests a session with server
Step 2 – Server acknowledges and requests a session with client
Step 3 – Client Acknowledges communication session with server
TCP Session Termination (Eric)
To close a connection, the Finish (FIN) control flag must be set in the segment header
To end each one-way TCP session, a two-way handshake, consisting of a FIN segment and an Acknowledgment (ACK) segment, is used
To terminate a single conversation supported by TCP, four exchanges are needed to end both sessions
TCP Three-way Handshake Analysis (Eric)
The three-way handshake
Establishes that the destination device is present on the network
Verifies that the destination device has an active service and is accepting requests on the destination port number that the initiating client intends to use
Informs the destination device that the source client intends to establish a communication session on that port number
The six bits in the Control Bits field of the TCP segment header are also known as flags
RST flag is used to reset a connection when an error or timeout occurs
TCP Reliability – Ordered Delivery (Eric)
Sequence numbers are assigned in the header of each packet
Represents the first data byte of the TCP segment
During session setup, an initial sequence number (ISN) is set - represents the starting value of the bytes
As data is transmitted during the session, the sequence number is incremented by the number of bytes that have been transmitted
Missing segments can then be identified
TCP Flow Control – Window Size and Acknowledgments (Eric)
In the figure, the source is transmitting 1,460 bytes of data within each segment
indow size agreed on during 3-way handshake
Typically, PC B will not wait for 10,000 bytes before sending an acknowledgment
PC A can adjust its send window as it receives acknowledgments from PC B
TCP Flow Control – Congestion Avoidance (Eric)
Congestion causes retransmission of lost TCP segments
Retransmission of segments can make the congestion worse
To avoid and control congestion, TCP employs several congestion handling mechanisms, timers, and algorithms
Example
Reduce the number of bytes it sends before receiving an acknowledgment
UDP Low Overhead versus Reliability (Eric)
UDP not connection- oriented
No retransmission, sequencing, and flow control
Functions not provided by the transport layer Implemented elsewhere
:cherry_blossom:
SCARLETT
4.1.1 THE PURPOSE OF THE TRANSPORT LAYER IN MANAGING THE TRANSPORTATION OF DATA IN END-TO-END COMMUNICATION.
TCP(CONT.
)
3 RESPONSIBILITIES
:leaves:Numbering & tracking data segments.
:leaves:Acknowledging received data.
:leaves: Retransmitting any unacknowledged data after a certain period of time.
UDP
:pineapple:Use UDP for less overhead&to reduce possible delays.
:pineapple:Best effort delivery (unreliable)
:pineapple:No acknowledgment.
:pineapple:Similar to a non-registered letter.
TCP
TCP transport is
similar to sending tracked packages
.
If a shipping order is broken up into several packages , a customer can check online to see the order of the delivery.
THE RIGHT TRANSPORT LAYER PROTOCOL FOR THE RIGHT APPLICATION
:pushpin:TCP
-databases, web browsers&email clients require that all data that is sent arrives at the destination in its original condition.
:pushpin:UDP
-if one/two segments of a live video stream fail to arrive, if disruption in the stream,may not be noticeable to the user.
TRANSPORT LAYER RELIABILITY
TCP/IP PROVIDES 2 TRANSPORT LAYER PROTOCOLS :
:sunflower:Transmission Control Protocol (TCP)
-Considered reliable which ensures that all of the data arrives at the destination.
:sunflower:User Datagram Protocol(UDP)
-Does not provide for reliability
-Fewer fields & faster than TCP.
ROLE OF THE TRANSPORT LAYER
:BULB: Establishing a temporary communication session between 2 applications & delivering data between them.
:bulb:Link between the application layer & the lower layers that are responsible for network transmission.
CONVERSATION MULTIPLEXING
:check:Segmenting the data into smaller chunks enables many different communications to be multiplexed on the same network.
TRANSPORT LAYER RESPONSIBILITIES
:pencil2:TRACKING THE CONVERSATION- Tracks each individual conversation flowing between a source and a destination application.
:pencil2:SEGMENTATION
-Divides the data into segments that are easier to manage & transport.
:pencil2:IDENTIFYING THE APPLICATION
-Ensures that even with multiple applications running on a device, all applications receive the correct data via port numbers.