섹션 1. 인터넷 네트워크

콜 파머가 될 남자·2023년 3월 19일
0
post-thumbnail

인터넷 통신

컴퓨터 둘이 통신하는 방법: 클라이언트와 서버가 붙어있으면 cable을 연결하면 됨.
but, 전달해야할 pc가 멀리있으면 인터넷 망을 이용하는데,
이때 수많은 중간 노드 서버를 거쳐서 메세지가 넘어가야함 -> 어떤 규칙을 이용할까?


IP(인터넷 프로토콜)

역할: 지정한 IP 주소 (IP Address)에 데이터를 전달한다.
패킷(Packet)이라는 통신 단위로 데이터를 전달한다.

메세지를 그냥 보내지 않고 IP Packet이라는 규칙이 존재한다.
Packet에 나의 IP와 목적지의 IP를 적는다.

IP 프로토콜의 한계

  1. 비연결성
    패킷을 받은 대상이 없거나 서비스 불능 상태여도 패킷이 전송된다.
  2. 비신뢰성
    중간에 패킷이 사라지거나, 패킷이 순서대로 안올수도 있다.
  3. 프로그램 구분
    인터넷 게임도하고, 음악도 듣는 경우

TCP, UDP

물데네전세표응 physical, data link, network, transport, session, presentation, application

메세데프
message, segement, datagram, frame

위 암기법은 2-2에 ... .. 컴네할때 했었던.....

TCP (전송 제어 프로토콜)

  1. connection oriented = 연결지향 - TCP 3 way handshake **(가상 연결)

    //가상연결 -> 나를 위한 전용 랜선이 보장되는 것이 아닌, 그냥 논리적으로만 연결됨
  2. reliable data transfer = 데이터 전달 보증

  3. 순서 보장
    최적화 방법은 내부적으로 다를 수 있지만,
    기본적으론 다시 보내라고 요청함

=> 즉, TCP는 신뢰할 수 있는 프로토콜이다.




UDP (사용자 데이터그램 프로토콜)

TCP가 보장하는 특징들을 UDP는 보장하진 않지만 단순하고 빠르다
(TCP의 3-way handshake에는 시간이 필요하고, 데이터 양도 많다)
즉, IP와 거의 같다. +PORT +체크섬 정도만 추가
애플리케이션에서 추가 작업이 필요하다

UDP는 그냥 하얀 도화지임 -> 최근 각광을 받고있음
TCP가 90%이상을 점유하지만
웹브라우저에서 HTTP통신을 할 때 TCP-handshaking 시간을 줄이기 위해 (최적화)
UDP를 사용하면서 인기를 얻고 있다.


PORT

정의 : 배가 도착하는 항구
한번에 둘 이상을 어떻게 연결할까?

IP의 개념에 PORT를 첨가함
출발지의 IP, 출발지의 PORT
목적지의 IP, 목적지의 PORT

IP가 아파트이면 PORT는 동호수이다.
HTTP - 80, HTTP - 443


DNS

DNS (Domain Name System)

도메인을 사서 등록할 수 있다.

DNS를 통해 IP를 기억하기 힘든점과 변경될 수도 있는 점을 보완할 수 있다.

Reference
김영한 님 - 모든 개발자를 위한 HTTP 웹 기본 지식

profile
콜 파머가 개발자라면 사회적 인지도는 어느 정도일까

0개의 댓글