HTTP 웹 기본 지식 [인터넷 네트워크]

김진영·2023년 8월 14일
0

[인터넷 네트워크]

인터넷 프로토콜 스택의 4계층

  • 애플리케이션 계층 - HTTP, FTP
  • 전송계층 - TCP, UDP
  • 인터넷 계층 - IP
  • 네트워크 인터페이스 계층

인터넷 통신

인터넷에서 컴퓨터는 어떻게 통신을 할까??

IP(Internet Protocol)

인터넷 프로토콜의 역할

  • 지정한 IP 주소(IP Address)에 데이터 전달
  • 패킷(Packet)이라는 통신 단위로 데이터 전달

IP 프로토콜의 한계

  • 패킷을 받을 대상이 없거나 서비스 불능 상태여도 패킷전송
  • 중간에 패킷이 사라지거나 패킷이 순서대로 안오면? (패킷 소실)
  • 같은 IP를 사용하는 서버에서 통신하는 어플리케이션이 둘 이상이면? (구분방식의 한계가 있다.)

TCP, UDP

TCP의 특징

전송 제어 프로토콜(Transmission Control Protocol)

  • 연결지향 - TCP 3 way handshake(가상연결)
  • 데이터 전달 보증
  • 순서보장
  • 신뢰할 수 있는 포로토콜
  • 현재는 대부분 TCP 사용

UDP의 특징

사용자 데이터그램 프로토콜 (User Datagram Protocol)

  • 하얀 도화지에 비유함(기능이 거의 없다)
    • TCP 3way handshake X
    • 데이터 전달 보증 X
    • 순서 보장 X
  • 데이터 전달 및 순서가 보장되지 않지만 단순하고 빠름
    • IP와 거의 같다, PORT + 체크섬 정도만 추가
    • 애플리케이션에서 추가 작업 필요

PORT

  • 0 ~ 65535 - 할당 가능
  • 0 ~ 1023 - 잘 알려진 포트, 사용하지 않는 것이 좋음
    • FTP - 20,21
    • TELNET - 23
    • HTTP - 80
    • HTTPS - 443
  • 같은 IP 내에서 프로세스 구분

DNS

도메인 네임 시스템(Domain Name System)

  • 전화번호부? 같은 서버
  • 도메인 명을 IP 주소로 변환
  • 2가지 문제 동시에 해결 가능
    • IP는 기억하기 어려운 문제
    • IP가 변경될 수 있는 문제

정리

메세지를 보내기 위해선 제일 먼저 Internet Protocol 이라는 IP가 있어야 한다,
IP Protocol 이라고도 부른다

이 IP Protocol 만으로는 메세지가 잘 도착했는지 신뢰하기 어렵고 PORT 라는 개념도 없다.

또한 순서가 꼬일수도 있음.
이러한 문제를 TCP가 해결해 준다

UDP는 IP와 거의 똑같은데 PORT 만 추가되는 백지? 상태 필요하면 UDP Protocol위에 내가 애플리케이션에서 기능을 확장할 수 있다.

PORT는 같은 IP안에서 동작하는 애플리케이션을 구분하기 위해 사용 쉽게 말해서,
IP = 아파트 PORT = ooo동 ooo호

DNS는 IP 주소가 변하기 쉬우므로 도메인 명을 등록하여
사용자가 이를 쉽게 사용할 수 있도록 도와줌.

0개의 댓글