인터넷 네트워크

Sejun Park·2022년 2월 24일
0

HTTP

목록 보기
1/6
post-thumbnail
post-custom-banner

본 글은 김영한 선생님의 '모든 개발자를 위한 HTTP 웹 기본 지식' 강의를 정리한 것입니다.


💡 IP(인터넷 프로토콜)

사람들 마다 IP를 가지고 있으며, IP는 두가지 역할을 합니다.

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

패킷은 시작IP, 도착IP, 기타, 내용을 담아 보내는 통신 단위입니다.

📌 IP프로토콜의 한계

  • 비연결성 : 패킷을 받을 대상이 없거나 서비스 불능 상태여도 패킷 전송(마치 우편처럼)
  • 비신뢰성 : 중간에 패킷이 사라지거나, 여러개보냈을때 순서대로 안오는 경우
  • 프로그램 구분 : 게임도 하고, 음악도 듣고 같은 ip에서 통신하는 애플리케이션이 둘 이상일 때 어떻게 구분하는지 모름

📁 TCP

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

4계층
출처 : https://hahahoho5915.tistory.com/15

로 이루어져 있으며,

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

로 정리할수 있습니다.

📌 프로토콜 계층에 따라 흘러가는 순서

  1. 웹이나 게임 등 애플리케이션에서 메세지를 생성하면 SOCKET 라이브러리를 통해 OS로 전달.
  2. 메세지를 TCP 정보로 감싸줍니다. 그다음으로 IP 에 넘겨줍니다.
  3. IP 에서는 받은 데이터를 IP 정보로 감싸줍니다. 그 다음으로 네트워크 인터페이스로 넘겨줍니다.
  4. 이더넷 프레임에 감싸고 최종적으로 서버로 출발합니다.

📌 TCP/IP 패킷 정보

이전에 문제가 되었던 비연결성, 비신뢰성에 관련해서 정보를 담아서 패킷에 담아줌으로써 문제가 해결되게 됩니다.

담기는 정보 : 출발지 PORT, 목적지 PORT, 전송 제어, 순서, 검증 정보 등등

📌 TCP 특징

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

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

TCP 3 way handshake 는 클라이언트가 syn (접속 요청) 을 보내게 되면 서버에서 ack(요청 수락) 과 함께 syn 을 보냅니다(syn + ack). 그러면 클라이언트가 ack를 보내면서 서로 신뢰할 수 있는 상태가 됩니다.
3handShake

📁 UDP

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

  • 하얀 도화지에 비유(기능이 거의 없음)
  • 연결 지향 - TCP 3 way handshake X
  • 데이터 전달 보증 X
  • 순서 보장 X
  • 데이터 전달 및 순서가 보장되지 않지만, 단순하고 빠름

UDP 는 IP와 거의 같으나 PORT와 체크섬 정도만 추가된 것이락 볼수 있습니다. 애플리케이션에서 추가작업이 필요합니다.


💡 PORT

위에서 비신뢰성, 비연결성을 해결하면 프로그램 구분이 남아있습니다. PORT 가 프로그램 구분을 할수 있도록 해줍니다.

우리가 요청할 때 패킷에 IP 뿐만 아니라 PORT 정보까지 넘기고 있었기 때문에 한 컴퓨터에서 여러 프로그램을 돌릴 수 있었습니다. (IP가 아파트이면 PORT가 몇호 이다.)

  • 0 ~ 65535 할당 가능
  • 0 ~ 1023: 잘 알려진 포트, 이미 선점했을 확률이 크기 때문에 사용하지 않는 것이 좋음
    • FTP : 20, 21
    • TELNET : 23
    • HTTP : 80
    • HTTPS : 443

💡 DNS

우리가 IP를 주소를 기억하기 힘들뿐더러, IP 주소가 바뀌었을 경우 클라이언트입장에서 찾을 수가 없었습니다. 이것을 해결해 주기 위한 것이 DNS(Domain Name System)입니다.

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

DNS

profile
백엔드 개발자
post-custom-banner

0개의 댓글