Data Link Layer Switching

Download Report

Transcript Data Link Layer Switching

Transport Layer
Foreleser: Carsten Griwodz
Email: [email protected]
18. Mar. 2004
1
INF-3190: Transport Layer
Transport service
18. Mar. 2004
2
INF-3190: Transport Layer
Transport Layer Function

To provide data transport




For



Reliably
Efficiently
At low-cost
Process-to-process (applications)
I.e. at endsystem-to-endsystem
If possible independent from
particularities of the networks used
18. Mar. 2004
3
INF-3190: Transport Layer
Transport Service

Connection oriented service

3 phases




5
Application
Layer
Application
Layer
4
Transport
Entity
Transport
Entity
3
Network
Layer
Network
Layer
Connectionless service


connection set-up
data transfer
disconnect
Transport
Service
Protocol
Access Point
Service Interface
Transfer of isolated units
Realization: transport entity


Software and/or hardware
Software part usually
contained within the kernel
(process, library)
18. Mar. 2004
1-2
IP: Message
ISO: Transport Protocol Data Unit
4
INF-3190: Transport Layer
Transport Protocols & Network Services

Transport layer protocol
depends on the quality of the network layer service

ISO Network type A








ISO Network type B




Network is reliable
Network recognizes data loss as an error
Errors are displayed to the user i.e. acceptable rate of the errors
Minor (for the user acceptable) error rate
Network never duplicates or manipulates packets
Order of sent packets is always maintained
Typically connection oriented network service (CONS) on LANs
Like type A, except
Remaining error rate (for data loss) is not acceptable
Typically CONS on (old) WANs
ISO Network type C





18. Mar. 2004
Network is unreliable
Errors due to losses, duplication and manipulation of packets, as well as faulty packet
sequence errors possible
Errors might remain undetected
Transport protocol has to / should compensate for this
Typically connectionless network service (CNLS) on WANs
5
INF-3190: Transport Layer
Transport Service
End system

Similar services of




Network layer and transport layer
Why 2 Layers?

4
Intermediate system
3
3
2
2
1
1
Not to be self-governed or influenced by the user
Independent from application & user

enables compatibility between applications
Provides for example



5
Network service

End system
“only” connection oriented communications
or “only” unreliable data transfer
Transport service


To improve the Network Service Quality
Users and layers want to get from the network layer, e.g.


18. Mar. 2004
reliable service
necessary time guarantees
6
INF-3190: Transport Layer
Transport Service

Transport layer


Isolates upper layers from technology, design and
imperfections of subnet
Traditionally distinction made between

Layers 1 – 4


Layers above 4


transport service provider
transport service user
Transport layer has key role

Major boundary between provider and user of reliable
data transmission service
18. Mar. 2004
7
INF-3190: Transport Layer
Transport Service: Terminology

Entities exchanged


ISO: Transport Protocol Data Unit (TPDU)
IP: Message
Layer
Transport
Network
Data link
Physical

Data Unit
Message or TPDU
Packet
Frame
Bit/byte (bitstream)
Nesting of messages, packets, and frames
Packet header
Frame header
Message header
Message Payload
Packet Payload
Frame Payload
18. Mar. 2004
8
INF-3190: Transport Layer
Transport protocols

ISO defines 5 classes: ISO OSI TP0..TP4
Protocol Network
class
type
TP0
A
TP2
TP1
B
TP3
TP4
18. Mar. 2004
C
Network properties
Name
Acceptable error rate
Acceptable rate of
displayed errors
Simple class
Multiplexing class
Inacceptable error rate
Acceptable rate of
displayed errors
Basic error recovery
Inacceptable error rate
Inacceptable rate of
displayed errors
Error recover and
multiplexing class
9
Error recover and
multiplexing class
INF-3190: Transport Layer
Transport Protocols

Class TP 0: simple class





Mechanisms for connect and disconnect
Segmentation / reassembly
No error, sequence or flow control
No expedited data
Class TP 2: multiplexing class




Class 0 including additional multiplexing capability
Multiplexing: several transport layer connections on one network layer
connection
Flow control optional
Expedited data optional
18. Mar. 2004
10
INF-3190: Transport Layer
Transport Protocols

Class TP 1: basic error recovery


Class 0 including additional error recovery
Error recovery masks resets




Expedited data optional



TPDU numbering
TPDU storage until ACK
after reset: resynchronization
important data for example have a higher priority
i.e. preferred processing before current data is processed
Class TP 3: including multiplexing and error recovery


Class 1 and 2 functions combined
i.e. error recovery, expedited data, multiplexing
18. Mar. 2004
11
INF-3190: Transport Layer
Transport Protocols

Class TP 4: error monitoring and recovery

Detects and recovers







TPDU losses and TPDU duplication
sequence errors
Flow control
Multiplexing
Splitting (one transport connection uses several network connections)
Expedited data
Note


IPv4 and IPv6 are connectionless
Unavailable concepts in TCP/IP



Multiplexing
Splitting
No clear definition for ST-II
18. Mar. 2004
12
INF-3190: Transport Layer
Transport Protocols

TCP/IP specifies protocols

Services provided implicitely
Connection-oriented service
Connectionless service
Ordered
Partially Ordered
Unordered
Reliable
Partially Reliable
Unreliable
With congestion control
Without congestion control
Multicast support
Multihoming support
18. Mar. 2004
13
UDP DCCP TCP SCTP
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
INF-3190: Transport Layer
Addressing at the Transport Layer
Telnet
client
Telnet
server
FTP
client
FTP
server
Web
client
Web
server
Transport
Network
Data link

Application


Communication between applications required
Application communicate



locally by interprocess communication
between system via transport services
Transport layer


Physical
Interprocess communication via communication networks
Internet Protocol IP

Enables endsystem-to-endsystem communication
18. Mar. 2004
14
INF-3190: Transport Layer
Addressing at the Transport Layer

Transport address different from network address

Sender (process) must address receiver (process)



for connection setup or individual message
Receiver (process) can be approached by the sender (process)
Define transport addresses:



ISO term: Transport Service Access Point (TSAP)
Internet: port
ATM: AAL-SAP
Processes
5
Transport addresses
Network addresses
4
Transport
Entity
Transport
Entity
3
Network
Layer
Network
Layer
1-2
18. Mar. 2004
15
INF-3190: Transport Layer
Addressing at the Transport Layer
Service B
Service A
Port
1
Port
2
Port
Port
3
4
Port
5
Service C


3 types of identifiers: names, addresses and routes
[Shoch 78]


Address identifies



“The name of a resource indicates WHAT we seek,
an address indicates WHERE it is,
and a route tells HOW TO GET THERE”
Type of service or application
Addresses of services must be known
Addressing by process number is unsuitable




Processes are generated/terminated dynamically, i.e. the process number rarely known
Relationship “service - process” not fix
1 process can supply multiple services
Various processes can provide same service
18. Mar. 2004
16
INF-3190: Transport Layer
Addressing at the Transport Layer
Service A
B
Port
1
Buffer
1

Buffer
2
Service
Port
Port
Buffer
Buffer
2
Buffer
3
C
4
3
5
Port
Buffer
Communication ports

Service


Port access



Related to exactly one single port
Asynchronous or
Synchronous
Port

18. Mar. 2004
Associated with buffer
17
INF-3190: Transport Layer
Addressing at the Transport Layer
Decimal
0
1
5
7
9
11
13
15
17
19
20
21
23
25
37
42

Keyword
TCPMUX
RJE
ECHO
DISCARD
USERS
DAYTIME
QUOTE
CHARGEN
FTP-DATA
FTP
TELNET
SMTP
TIME
NAMESERVER
UNIX keyword
Description
echo
discard
systat
daytime
netstat
qotd
chargen
ftp-data
ftp
telnet
smtp
time
name
reserved
TCP Multiplex
Remote Job Entry
Echo
Discard
Active Users
Daytime
Network Status Program
Quote of the day
Character Generator
File transfer protocol (data)
File transfer protocol
Terminal Connections
Simple mail transfer protocol
Time
Host name server
TCP and UDP have their own assignments

this table shows some examples for TCP (read /etc/services for more)
18. Mar. 2004
18
INF-3190: Transport Layer
Addressing at the Transport Layer
Decimal
Keyword
UNIX keyword
Description
43
53
77
79
80
101
102
103
104
110
111
113
117
119
129
139
160-1023
NICNAME
DOMAIN
whois
nameserver
rje
finger
HTTP
hostname
iso-tsap
x400
x400-snd
pop3
sunrpc
auth
uucp-path
nntp
Who is
Domain Name Server
Any private rje service
Finger
World Wide Web
NIC Host Name Server
ISO TSAP
X.400 Mail Service
X.400 Mail Sending
Remote Email Access
SUN Remote Procedure Call
Authentication Service
UUCP path services
USENET News Transfer Protocol
Password Generator Protocol
NETBIOS Session Protocol
18. Mar. 2004
FINGER
HTTP
HOSTNAME
ISO-TSAP
X400
X400-SND
POP3
SUN RPC
AUTH
UUCP-PATH
NNTP
PWDGEN
NETBIOS-SSN
Reserved
19
INF-3190: Transport Layer
Addressing at the Transport Layer

Application

Example



Implementation of application


process, thread
Interface to communication systems


decompression of video data
read process from database or file system
buffers with predefined access mechanisms
Sender and receiver create


Stream or
Socket

several connections share a socket



Example

address: IP address of the endsystem
address: 16-bit port number

0..1024: predefined ports, “well known”

additional ones managed dynamically
192.169.100.17:80 socket with
IP address 192.169.100.17 and port no. 80
18. Mar. 2004
20
INF-3190: Transport Layer