Transport Layer
- Layer 4
- End-to-end (process-to-process) communiation
Layers : funtions
Physical Layer
- bits를 signal로 변환하고, signal을 bits로 복구한다
- encoding/decoding, modulation/demodulation
Data link Layer
- physically connected node들 사이에서 bits를 전달한다
- framing, error detection/correction, ARQ, medium access control
Network Layer
- 여러 network들을 통해 end-to-end delivery가 가능하게 한다
- global addressing, routing, fragmentation/reassembly
Transport Layer
- process들 사이에서 (at end hosts) data를 전달한다
- reliable communication, flow control, congestion control
Process-to Process Communication
- communication이 필요한 여러 process(application)들은 하나의 host 안에 존재할 수 있다.
- Network layer에서는 IP address에 따라서만 packet을 전달한다.
- Does NOT know which process the packet belongs to
- The packet is delivered to the process
listening on a port at the transport layer
Port
- 하나의 host에서 작동하는 process들을 구분하기 위해 사용된다
- a 16 bit number (0 ~ 65,535)
- process-to-process communication을 위해 필요한 정보
- local host (IP address)
- local process (port number)
- remote host
- remote process (port number)
Socket
- process-to-process communication을 위해 사용되는 자료구조
- socket address = IP address + port number
Protocols
TCP
- connection-oriented
- communication 전에 (logical) connection이 established
- reliable
- message가 error 없이, 순서대로 received
UDP
- connection-less
- communication이 connection 없이 take place
Error Control
- Data link layer에서의 error control
- physical link를 통해서 간 후, bit가 잘 도착했는지
- host나 router에서의 packet loss를 막을 수 없다.
- loss due to destination unreachable, time exceeded, ...
- reliable process-to-process communication을 위해서,
error control은 tranport layer에서도 필요하다