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