본문 바로가기
HTTP

인터넷 네트워크

by o3oppp 2024. 2. 4.

IP(Internet Protocol)

: 인터넷 프로토콜(IP, Internet Protocol)은 송신 호스트와 수신 호스트가 패킷 교환 네트워크에서 정보를 주고받는 데 사용하는 정보의 규약이며, OSI 네트워크 계층에서 호스트의 주소지정과 패킷 분할 및 조립 기능을 담당

역할

  1. 지정한 UP 주소에 데이터 전달
  2. 패킷(Packet)이라는 통신 단위로 데이터 전달

한계

  1. 비연결성 : 패킷을 받을 대상이 없거나 서비스 불능 상태여도 패킷 전송
  2. 비신뢰성 : 패킷 소실, 패킷 전달 순서 문제 발생(보낸 순서대로 도착한다는 보장이 없음)
  3. 프로그램 구분 : 동일한 IP를 사용하는 서버에서 통신하는 애플리케이션이 둘 이상인 경우 구분 불가

TCP(전송 제어 프로토콜)

: 인터넷을 통해 디바이스에서 웹 서버로 데이터를 전송하는 네트워크 프로토콜로서 현재 대부분 TCP를 사용

특징

  1. 연결 지향 - TCP 3 way Handshake(가상 연결)
  2. 데이터 전달 보증
  3. 순서 보장
  4. 신뢰할 수 있는 프로토콜

TCP 3 way Handshake

: 데이터 전송 전 정확한 전송을 보장하기 위해 상대방 컴퓨터와 사전에 세션을 수립하는 과정을 의미

역할

  1. 양쪽 모두 데이터를 전송할 준비가 되었다는 것을 보장
  2. 양쪽 모두 상대편에 대한 초기 순차일련번호를 얻을 수 있음

순서

  1. Client -> Server : SYN 전송
  2. Server -> Client : ACK 전송
  3. Client -> Server : ACK 전송


UDP

: User Datagram Protocol, 즉 ‘사용자 데이터그램 프로토콜’의 약자

특징

  1. 기능이 거의 없음
  2. 연결 지향 X
  3. 데이터 전달 보증 X
  4. 순서 보장 X
  5. 단순하고 빠름

PORT

인터넷 프로토콜인 TCP/IP를 사용할 때에는 클라이언트 프로그램이 네트워크 상의 특정 서버 프로그램을 지정하는 방법으로, 같은 IP 내에서 프로세스의 구분 값

  • IP가 아파트라면 POR는 몇동 몇호

DNS(Domain Name System)

IP는 기억하기 어려우며 변경될 수 있기에 IP 주소 및 기타 데이터를 저장하고 이름별로 쿼리할 수 있게 해주는 계층형 분산 데이터베이스. 사용자가 입력한 도메인 명을 DNS서버에서 등록된 IP를 찾아 IP 주소로 반환


URL(Uniform Resource Identifier)

  • Uniform : 리소스 식별하는 통일된 방식
  • Resource : 자원(URI로 식별할 수 있는 모든 것을 의미)
  • Identifier : 다른 항목과 구분하는데 필요한 정보

URL(Uniform Resource Locator)

  • Locator : 리소스가 있는 위치를 지정

URN(Uniform Resource Name)

  • Name : 리소스에 이름을 부여

문법

scheme://[userinfo@]host[:port][/path][?query][#fragment]
(https://www.google.com:443/search?q=hello&hl=ko)

1. scheme(https)

  • 주로 프로토콜 사용
  • http는 80, https는 443 포트를 주로 사용하며 포트는 생략 가능

2. userinfo

  • URL에 사용자 정보를 포함해서 인증
  • 거의 사용 X

3. host(www.google.com)

  • 호스트 명
  • 도메인 명 또는 IP 주소를 직접 사용

4. port(443)

5. path(/search)

  • 리소스 경로, 계층적 구조
  • /members, /members/100, /members/file1.jpg

6. query(q=hello&hl=ko)

  • key = value 의 형태
  • ?로 시작, &로 추가
  • 쿼리 파라미터, 쿼리 스트링 등으로 불림

7. fragment

  • html 내부 북마크 등에 사용
  • 서버에 전송하는 정보 X

'HTTP' 카테고리의 다른 글

상태코드  (0) 2024.02.12
메서드의 속성  (0) 2024.02.06
메서드 종류  (0) 2024.02.06
HTTP 메시지 구조  (0) 2024.02.05
HTTP  (0) 2024.02.05