모든 개발자를 위한 HTTP 웹 기본 지식(인터넷 네트워크)

존스노우·2022년 5월 24일
0

IP

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

패킷 정보

프로토콜 규약에 따라 전송이 된다.

IP 프로토콜의 한계

대상이 받을수 있는 상태인지 아닌지 모름..

  • 비연결성
    • 패킷을 받을 대상이 없거나 서비스 불능 상태여도 패킷 전송
      (상대방이 그 주소에 없어도 (접속종상태) 그냥 보냄

중간에 보내다 서버가 꺼지면?

일정 크기가 넘으면 분할되서 보내지는대 순서가 바뀌면 ..?

  • 비신뢰성
    • 중간에 패킷이 사라지면?
    • 패킷이 순서대로 안오면?
  • 프로그램 구분
  • 같은 IP를 사용하는 서버에서 통신하는 애플리케이션이 둘 이상 이면?

TCP/UDP

프로토콜 계층

각 계층을 이동 할때마다 헤더가 붙는 작업.

TCP/IP 패킷 정보

TCP 특징

전송 제어 프로토콜

  • 연결 지향 - TCP 3 way handshake (가상 연결) (연결이 되있나?)
  1. SYN(싱크로나이즈)
  2. SYN(싱크로나이즈) , ACK(응답)
  3. ACK(응답)

클라이언트와 서버 둘다 서로 믿는다.
연결이 되고 나면 그다음 데이터 전송
요즘은 최적화되서 3번단계 에서 데이터도 보냄.

개념적(논리적)으로만 연결된 상태

  • 데이터 전달 보증 (메시지가 누락되면 확인가능)

메시지가 잘 전달 됬구나~ (응답이 잘 왔을 때)

  • 순서 보장

  • 신뢰할 수 있는 프로토콜

  • 현재 대부분 TCP 사용

UDP 특징

  • 기능이 없음 (하얀 도화지)

  • 연결지향 X

  • 데이터전달보증 X

  • 순서 보장 X

  • 데이터 전달 및 순서가 보장되지 않지만, 단순하고 빠름

  • 정리

  • IP와 거의 같다. + PORT + 체크섬 정도만 추가
  • 애플리케이션에서 추가작업 필요

PORT(같은 IP로 여러 요청이 있는대 Port로 나눠줌 )

TCP는 이미 규격이 정해져있어서 최적화 하기 어렵다.
UDP는 최적화 가능

PORT

IP 만가지고 해결하기엔 문제가 있다.

DNS

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

-> 도메인 To Ip

profile
어제의 나보다 한걸음 더

0개의 댓글