vault backup: 2022-10-17 12:43:04

This commit is contained in:
Jet Hughes 2022-10-17 12:43:04 +13:00
parent f8f6368059
commit b163b3e295

View File

@ -5,5 +5,68 @@ tags:
- cosc203
- lecture
---
chapter 3
# service provided by transport layer
services
- process to process communication
- logical communication between application processes
- multi and demulti plexing
- communication for multiple applications of the same host
- flow control
- ensure production reate <= consuption rate
- congestion control
- too many sender, sending too fast
#
protocols
- TCP transmission control protocol
- UDP user datagram protocol
## actions and sender
- is passed an app layer lessage
- determines segment header fields values
- creates segment
- passes segement to IP
## actions at reciever
- recieves segment from IP
- checks header values
- extract app layer message
- de multiplexes message up to application via socket
# multiplexing and demultiplexing
sender: handle data from multiple sockets, add transport header
reciever: user header info to deliver segments to correct socket
![](https://i.imgur.com/f2NqsKE.png)
## how it works
port number
- 16 bit integer (0, 66635)
- segment has a source and a port number
- host uses IP and port to direct segment to appropriate socket
IANA (internet assign number authority) has divded port number into three ranges
- 0-1023 well known
- 1024-49151 registered
- 49152-65535 dynamic
## principle of reliable data transfer
![](https://i.imgur.com/ORzC8jm.png)
- compexity of reliable data transfer protocol depends on character istics of unreliable channel
- sender and reciever do not know the 'state' of each other. they need to communicate via a message - ACKknowledgement
# TCP
- point to point communicate
- one sender, one reciever
- reliable, in-order byte stream
- no message boundaries
- each byte has a position in the stream
- full duplex data
- bi directional data flow in the same connection
- MSS: maximum segment size
- cumulative ACKs
- connection-oriented
- handshaking (exchange of control messages) initializes se
# UDP