TCP/IP와 계층구조
업데이트:
TCP/IP
TCP/IP란 컴퓨터와 컴퓨터간 네트워크에서 원할한 통신을 가능하도록 하기 위한 프로토콜(통신규약)이다.
TCP(Transmission Control Protocol)
개념
- 네트워크에서 데이터 전달을 관리하는 규칙이다.
- 데이터를 전송할 때
패킷
단위로 나누어 보내고, 수신지에서 이를 다시 조립하여 원래 데이터로 만드는 규칙이다. TCP
는 패킷을 조립하고, 손실된 패킷을 확인하고, 재전송하도록 요청하는 기능을 한다.
데이터를 패킷 단위로 나누어 보내는 이유?
- 하나의 데이터를 통채로 전송하면 라우터 이동간에 데이터가 손실될 경우가 있다.
- 이 경우에는 데이터 손실이 일어나도, 수신지에서는 확인할 방법이 없다.
패킷
단위로 데이터를 나누어 보내면 패킷마다 전체 패킷수를 입력하여 전송하기 때문에 수신지에서 패킷 유실을 확인 할 수 있다.
IP(Internet Protocol)
개념
- 네트워크 상에서 데이터 전송을 위해 컴퓨터의 위치를 나타내는 규약이다.
- 기존에 사용하던 방식인
IPv4 - 32bit
에서 주소공간에 대한 우려로IPv6 - 128bit
가 등장했다.
TCP/IP 4계층
개념
-
OSI(Open Systems Interconnections) 7계층
은 시스템들의 연결을 위한 모델이다.TCP/IP 4계층
은 이를 웹 서비스에 맞게 단순화한 모델이다.
응용 계층(Application Layer)
- 응용프로그램들이 네트워크서비스, 메일서비스, 웹서비스 등을 할 수 있도록 표준적인 인터페이스를 제공한다.
- 네트워크를 사용하는 응용프로그램으로 이루어진다.
- TCP/IP 기반의 응용 프로그램을 구분할 때 사용한다.
- 프로토콜 : HTTP, FTP, Telnet, DNS
전송 계층(Transport Layer)
- 시스템을 연결하고 데이터를 전송하는 역할을 한다.
- 시스템의 논리주소와 포트를 가지고 있어서 상위 계층의 프로세스를 연결해서 통신한다.
- 정확한 패킷 전송이 보장이 필요할 때는 TCP를 사용하고, 패킷의 정확성보다는 빠른 속도의 전송이 필요한 멀티미디어 통신에서는 UDP를 사용한다.
- 통신 노드 간의 연결을 제어하고, 자료의 송수신을 담당한다.
- 프로토콜 : TCP, UDP
인터넷 계층(Internet Layer)
- 데이터를 정의하고 데이터의 경로를 라우팅한다.
- 전송 계층으로 부터 받은 데이터에 IP패킷 헤더를 붙여 IP패킷을 만들고 이를 전송한다.
- 통신 노드 간의 IP 패킷을 전송 및 라우팅 기능을 담당한다.
- 프로토콜 : IP, ARP, RARP
네트워크 액세스(Network Access Layer)
- OS의 네트워크 카드와 디바이스 드라이버 등과 같이 하드웨어적인 요소와 관련되 는 모든 것을 지원하는 계층이다.
- CSMA/CD, MAC, LAN, 패킷망 등에 전송에 사용된다.
- 프로토콜 : Ehternet(이더넷), Token Ring, PPP
데이터 통신 과정
- 클라이언트가 특정 URL로 요청한다.
- DNS에서 IP주소를 받아와
Application Layer
에서 HTTP 메세지를 작성한다. Tranpoot Layer
에서 HTTP 메세지를 패킷으로 나눈다.Internet Layer
에서 IP주소를 이용하여 전송 위치를 확인한다.- 네트워크를 통해서 패킷을 전송한다.
- 서버에서 정상적으로 패킷을 수신했다면, 같은 방식으로 클라이언트에게 응답한다.
댓글남기기