인터넷 통신

강무진·2023년 9월 14일

HTTP (Hypertext Transfer Protocol)와 HTTPS (Hypertext Transfer Protocol Secure)은 인터넷에서 데이터를 전송하기 위한 프로토콜입니다. 이 두 프로토콜은 웹 브라우징 및 웹 서비스에 사용됩니다.

1. HTTP (Hypertext Transfer Protocol):

HTTP는 웹 브라우징에서 가장 기본적으로 사용되는 프로토콜 중 하나입니다.
웹 서버와 웹 클라이언트 간에 데이터를 주고받는 데 사용됩니다.
데이터는 평문으로 전송되므로 보안이 취약합니다. 따라서 중요한 정보를 전송하는 웹사이트의 경우 보안상의 문제가 발생할 수 있습니다.
HTTP는 기본적으로 80번 포트를 사용합니다.

2. HTTPS (Hypertext Transfer Protocol Secure):

HTTPS는 HTTP의 보안 버전으로, 데이터를 암호화하여 안전한 통신을 제공합니다.
웹 브라우징에서 개인 정보를 전송하는 웹사이트, 온라인 결제, 로그인 등에서 주로 사용됩니다.
HTTPS는 SSL (Secure Sockets Layer) 또는 TLS (Transport Layer Security) 프로토콜을 사용하여 데이터의 기밀성과 무결성을 보장합니다.
HTTPS는 기본적으로 443번 포트를 사용합니다.

3. IP(Internet Protocol)

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

  • 패킷은 정보 기술에서 패킷 방식의 컴퓨터 네트워크가 전달하는 데이터의 형식화된 블록이다

IP 프로토콜의 한계

  • 비연결성
    패킷을 받을 대상이 없거나 서비스 불능 상태여도 패킷 전송
  • 비신뢰성
    중간에 패킷이 사라지거나, 순서대로 안오거나, 같은 IP를 사용할 경우

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

4. TCP(Transmission Control Protocol)

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

  • 데이터 전달 보증(주고 받았다)

  • 순서 보장(패킷 순서)

  • 신뢰성

  • 대부분 TCP 사용

SYN: 접속 요청 ACK: 요청 수락
참고: 3. ACK와 함께 데이터 전송 가능

5. UDP (User Datagram Protocol)

  • 순서, 연결지향, 데이터 전달 보장 (X)
  • 단순히 빠름
  • IP 와 거의 같으며 PORT 체크점 추가

PORT

  • 0 ~ 65535 할당 가능

  • 0 ~ 1023: 잘 알려진 포트, 사용하지 않는 것이 좋음

  • FTP - 20, 21

  • TELNET - 23

  • HTTP - 80

  • HTTPS - 443

profile
**프로그래머로 성장하는 여정**

0개의 댓글