TCP/IP
공부할 때 필기한 내용이라 알고 계시는 내용과 다를 수 있습니다.
간단하게 정리한 내용이므로 자세한 설명은 아닙니다.
TCP/IP의 개념
TCP/IP(Transmission Control Protocol / Internet Protocol)는 인터넷에서 사용되는 대표적인 프로토콜이다.
TCP/IP를 통하여 서로 상이한 네트워크에 연결되어 있는 수많은 컴퓨터들 간에 통신이 가능해진다.
TCP는 메시지나 파일들을 작은 패킷으로 나누어 인터넷을 통해 전송하는 일과, 수신된 패킷들을 원래의 메시지로 재조립하는 일을 담당한다.
IP는 각 패킷의 주소 부분을 처리함으로써, 패킷들이 목적지에 정확하게 도달할 수 있게 한다.
TCP/IP와 OSI 7 계층의 비교
TCP/IP의 각 계층은 OSI 7 계층과 유사한 기능을 수행하며, 각 계층별로 독립적인 프로토콜을 기반으로 한다.
시스템의 유연성과 각 모형에 적합한 서비스 특성 및 계층 수 측면에서 OSI 모델과 구분된다.
TCP/IP 계층
응용 계층 (Application Layer)
클라이언트 - 서버 방식으로 지원되며 인터넷을 사용하는 사용자들이 실제로 접하게 되는 네트워크 응용 프로그램을 말한다.
지원하는 프로토콜에는 HTTP, FTP, e-mail, Telnet, SMTP, SNMP, DNS, MIME 등이 있다.
전송 계층 (Transport Layer)
다른 네트워크로 연결된 시스템의 호스트나 호스트 사이의 프로토콜에서 데이터를 전달하거나 수신할 수있도록 하는 계층
대표적인 프로토콜은 TCP와 UDP가 쓰이며, 세션의 초기화,오류 제어,순서 검사를 포함하는 데이터 경로와 전달을 관리한다.
인터넷 계층 (Internet Layer)
인터넷 프로토콜(IP)를 정의하는 계층으로 IP 계층이라고도 부른다.
데이터의 주소,전송,패킷의 분할과 복구 기능을 제공한다.
대표적인 프로토콜은 주소 변환 프로토콜, 인터넷 제어 메시지 프로토콜, 인터넷 그룹 메시지 프로토콜 등이 있다.
네트워크 접근 계층(Network Access Layer)
단위 네트워크 내에서 패킷 전송을 담당하며, 전송 매체의 접근 방법,네트워크 사이의 데이터 전송 순서를 기술하는 계층
대표적인 프로토콜은 이더넷,FDDI,토큰 링, X25 등이 있다.
인터넷 프로토콜
HTTP (Hyper Text Transfer Protocol)
HTTP는 포트번호를 '80' 포트를 사용한다.
웹상에서 서버와 클라이언트가 HTML 문서로 송수신하기 위해 사용되는 통신규약
HTTP를 통해 전달되는 자료를 http:로 시작하는 URL(인터넷 주소)로 조회할 수 있다.
SMTP (Simple Mail Transfer Protocol)
SMTP는 포트번호를 '25' 포트를 사용한다.
전자우편을 보내고 받는데 사용되는 단순 메일 전송 프로토콜이다.
대개 수신을 위해서는 POP3이나 IMAP(Internet Message Access Protocol)을 사용한다.
SNMP (Simple Network Management Protocol)
SNMP는 포트번호를 '161', '162' 포트를 사용한다.
└ '161' 포트는 Agent
└ '162' 포트는 Manager
네트워크 장비를 관리 감시하기 위한 목적으로 UDP(User Datagram Protocol) 상에 정의된 프로토콜이다.
SNMP는 네트워크 관리자가 네트워크 성능을 관리하고, 네트워크의 문제점을 찾아서 수정하는데 도움을 준다.
SNMP Agent는 관리대상이 되는 시스템(각종 네트워크 장비, 컴퓨터)에 설치되어 필요한 정보를 수집하는 역할을 한다.
SNMP Manager는 SNMP Agent가 설치된 시스템에 필요한 정보를 요청하는 역할을 담당한다.
TCP(Transmission Control Protocol)
메시지나 파일들을 작은 패킷으로 나누어 인터넷을 통해 전송하는 일과 수신된 패킷들을 원래의 메시지로 재조립하는 일을 담당한다.
TCP 패킷은 인터넷과 라우터를 통해 전달되므로 하위 계층의 인터넷 프로토콜인 IP가 캡슐로 묶어서 전송한다.
TCP 헤더는 발신지 포트, 목적지 포트, 순서 번호, 수신 확인 번호 등을 포함하여 20바이트의 크기로 구성되어 있다.
UDP(User Datagram Protocol) - 비신뢰,비연결
메시지를 세그먼트로 나누지 않고 블록 형태로 전송한다.
데이터의 전송량이 많지 않은 경우에 주로 사용한다.
UDP는 TCP에 비해 매우 간단한 헤더 구조를 가지며 그에 따라 지원 가능한 기능도 적다.
IP(Internet Protocol) - 비신뢰,비연결
인터넷을 이용해 발신지에서 목적지까지 데이터그램을 전송할 수 있도록 라우팅 기능을 수행한다.
IP의 주요 기능으로는 주소 지정, 데이터의 캡슐화, 단편화와 재조합, 라우팅 등을 꼽을 수 있다.
TCP나 UDP와 같이 IP의 헤더도 여러 필드로 구성되어 있다.
IPv6는 이동성(Mobillty), 보안(Security), 서비스 품질(Qos, Quality of Service), 주소 자동설정(Auto-Configuration) 등을 지원한다.
무선 인터넷, 홈 네트워킹 등 차세대 유,무선 통합 망을 위한 네트워크 기반 솔루션으로 각광 받고 있다.
ICMP(Internet Control Message Protocol)
호스트 서버와 인터넷 게이트웨이 사이에서 메세지를 제어하고 에러를 알려주는 프로토콜이다.
ICMP 프로토콜은 보통 다른 호스트나 게이트웨이와 연결된 네트워크에 문제가 있는지 확인하는 용도로 사용된다.
ICMP 메시지는 인터넷과 라우터를 거쳐 운반되므로 IP로 캡슐화 해야 한다.
ICMP 헤더의 형식은 8바이트로 구성되어있다.
IGMP(Internet Group Management Protocol)
멀티캐스팅 및 멀티캐스트 그룹 구성원을 지원하는 IP 라우터 사이에서 구성원의 상태정보를 교환하는 데 사용된다.
멀티캐스트를 사용할 때 사용하는 프로토콜이다.
FTP (File Transfer Protocol)
TCP/IP 프로토콜을 가지고 서버와 클라이언트 사이의 파일 전송을 하기 위한 프로토콜이다.
'20' 포트는 데이터 전송, '21' 포트는 제어
DNS (Domain Name System)
호스트의 도메인 이름을 호스트의 네트워크 주소로 바꾸거나 그 반대의 변환을 수행할 수 있도록 하기 위해 개발되었다.
특정 컴퓨터의 주소를 찾기 위해, 사람이 이해하기 쉬운 도메인 이름을 숫자로 된 식별 번호(IP 주소)로 변환해 준다.
포트 번호는 '53'을 사용하며, UDP를 사용한다.
Telnet
인터넷이나 로컬 영역 네트워크 연결(원격)에 쓰이는 네트워크 프로토콜이다.
포트번호를 '23' 포트를 사용한다.
그림 구조
포트 주소
공인포트 (Well-known port)
0~1023
등록된 포트 (Registered port)
1024~49151
동적 포트 (Dynamic port)
49152~65535