본문 바로가기

기초개념

인터넷 네트워크에 대하여

인터넷 프로토콜의 4계층

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

IP (인터넷 프로토콜)

ip 주소 부여를 통해서 클라이언트 (ip:100.100.100.1) 에서 서버 (ip:200.200.200.2) 로 데이터를 전달 할 수 있다.
서로의 출발지와 목적지라고 생각하면 된다

IP 역할

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

IP 프로토콜의 한계

  • 비연결성

    • 패킷을 받을 대상이 없거나 서비스 불능 상태여도 패킷 전송
    • ex) 대상이 서비스 불능, 패킷 전송
  • 비신뢰성

    • 중간에 패킷이 사라지면? ex) 패킷 소실
    • 패킷이 순서대로 안오면? ex) 패킷의 용량이 클 때 패킷 전달 순서 문제 발생
  • 프로그램 구분

    • 같은 IP를 사용하는 서버에서 통신하는 애플리케이션이 둘 이상이면?

이러한 문제들을 해결해주는 것이 TCP/UDP 이다.

TCP/IP 패킷 정보

  • IP 패킷 : 출발지 IP, 도착지 IP, 기타...
  • TCP 세그먼트 : 출발지 PORT, 도착지 PORT, 전송 제어, 순서, 검증 정보...
  • 전송 데이터

TCP 특징

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

  • 연결 지향 - TCP 3 way handshake (가상 연결)

    • 클라이언트와 서버가 연결 되었는지 확인할 수 있는 방법으로 syn : 접속 요청, ack : 요청 수락 (실제 연결이 된 것이 아닌 개념적으로만 연결)
  • 데이터 전달 보증

      1. 데이터 전달 2. 데이터 잘 받았음 을 교환
  • 순서 보장

  • 신뢰할 수 있는 프로토콜

  • 현재는 대부분 TCP 사용

UDP 특징

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

  • 하얀 도화지에 비유 (기능이 거의 없음)
  • 연결지향 -TCP 3 way handshake X
  • 데이터 전달 보증 X
  • 순서 보장 X
  • 데이터 전달 및 순서가 보장되지 않지만, 단순하고 빠름
  • 정리
    • IP와 거의 같다. +PORT +체크섬 정도만 추가
      • 체크섬 : 메세지에 대해서 맞는지 검증해주는 데이터
    • 애플리케이션에서 추가 작업 필요

PORT 특징

IP가 아파트라고 한다면 PORT 는 호수이다.

  • 0 ~ 65535 할당 가능
  • 0 ~ 1023 : 잘 알려진 포트, 사용하지 않는 것이 좋음
    • FTP - 20,21
    • TELNET- 23
    • HTTP - 80
    • HTTPS - 443

DNS 특징

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

  • 전화번호부
  • 도메인 명을 IP 주소로 변환

IP의 문제점

  • 기억하기 어렵다.
  • IP는 변경될 수 있다.