인터넷은 데이터 중개 기능을 담당하는 네트워크 계층으로 IP 프로토콜을 사용하는 네트워크
인터넷에 연결하고자 하는 호스트는 반드시 ip 프로토콜을 지원해야 하며, 전송 계층은 TCP 나 UDP 를 사용해야 함
운영체제 내부에 전송 계층 까지만 구현하고 그 상위 계층은 사용자 프로그램으로 구현하는 방식
- 구현 환경
사용자 공간이 소켓 인터페이스라는 전송 계층의 프리미티브를 사용자 프로그램에서 호출하는 방식으로 사용함
- 시스템 공간
TCP(연결형 서비스), UDP(비연결형 서비스), IP 는 시스템 운영체제인 커널 내부에 구현됨
네트워크 계층 아래의 계층들은 LAN 카드와 LAN 카드를 구동하는 드라이버 루틴(커널 내부)에 의해 구현
- 사용자 공간
세션 계층부터 응용 계층까지의 기능은 사용자 프로그램으로 구현
시스템 호출을 용해 TCP, UDP 기능 사용
프로세스는 포트 하나를 할당함
- 프로토콜
- TCP/IP 계층 구조
응용 프로그램은 TCP와 UDP를 사용해 데이터 송수신 기능을 수행
네트워크 계층의 IP 프로토콜을 직접 사용하기도 함
ICMP와 ARP/RARP는 네트워크 계층에 소속되어 IP의 동작을 도움
- ARP와 RARP
- ARP
사용자로부터 입력된 상대방 호스트의 IP 주소를 이용해 MAC 주소를 구하는 기능
TCP/IP 모델에서 계층 2 프로토콜을 이용해 데이터 전송하려면 MAC 주소 필요함
- RARP
MAC 주소를 IP 주소로 변환하는 기능
하드디스크가 없는 시스템은 LAN 카드에 내장된 자신의 MAC 주소는 알지만 파일 시스템이 존재하지 않으므로 IP 주소를 알 수 없을 때 사용함
- ICMP
오류가 발생하면 반드시 송신자에게 오류 메세지를 전송하는 역할 담당
오류 메세지를 전송하기 위한 별도의 헤더 구조 가짐
IP 프로토콜과 같은 계층으로 간주할 수 있지만, ICMP에서 발
생하는 ICMP 메시지는 IP 패킷에 캡슐화되어 전송