인터넷 네트워크

Khan·2022년 7월 13일
0

TIL

목록 보기
4/19
post-thumbnail

인터넷 네트워크

IP (인터넷 프로토콜)

  1. 역할
    • 지정한 IP주소에 데이터 전달
    • 패킷(Packet)이라는 통신 단위로 데이터 전달
    • 패킷 = 패키지 + 버킷(package + bucket)
  2. 한계
    • 비연결성 : 패킷을 받을 대상이 없거나 서비스 불능 상태여도 패킷 전송
    • 비신뢰성 : 중간에 패킷이 사라질때, 패킷이 순서대로 오지 않을 수 있음
    • 프로구럄 구분 : 같은 IP를 사용하는 서버에서 통신하는 애플리케이션이 둘 이상이면 한계가 있다.

TCP, UDP

인터넷 프로토콜 스택의 4계층
애플리케이션 계층 - HTTP, FTP
전송계층 - TCP, UDP
인터넷 계층 - IP
네트워크 인터페이스 계층
  • IP 패킷 정보 : 출발지 IP, 목적지 IP, 기타 등등
  • TCP 패킷 정보 : 출발지 PORT 목적지 PORT, 전송제어, 순서, 검증정보 등등
  1. TCP 특징 (전송 제어 프로토콜)
    • 연결지향 - TCP 3 way handshake (가상연결) : 클라이언트가 서버로 sync를 보냄 => 서버에서 ack, sync를 응답함 => 클라이언트가 ack를 응답함 => 연결되었다고 생각
    • 데이터 전달 보증
    • 순서 보장
    • 신뢰할 수 있는 프로토콜
    • 현재는 대부분 TCP 사용
  2. UDP 특징
    • 데이터 전달 및 순서가 보장되지 않지만, 단순하고 빠름
    • IP와 거의 같지만 PORT, 체크섬 정도만 추가되었다
    • 애플리케이션에서 추가 작업 필요

PORT

  1. 한번에 둘 이상 연결해야 한다면?
    • 같은 IP내에서 프로세스를 구분 하는게 PORT이다
    • IP = 아파트, PORT = 아파트 호수
PROTNUM
할당0 ~ 65535
되도록 사용 X0 ~ 1023
FTP20, 21
TELNET23
HTTP80
HTTPS (보안추가)443

DNS

IP의 문제 : IP주소를 기억하기 어렵다, IP는 변경될 수 있다

  1. DNS란 : 도메인 네임 시스템 (Domain Name System)
    • 전화번호부
    • 도메인 명을 IP주소로 변환 시켜준다

URI

  • URI, URL, URN : URI는 URL로케이터(Locator) 또는 URN이름(Name) 혹은 둘다로 추가 분류될 수있다
  • URL (Uniform Resource Locator) : 리소스의 위치
  • URN (Uniform Resource Name) : 리소스의 이름 그 자체 (사용 X => 이름만으로 실제 리소스를 찾을 수 있는 방법이 없다)
  • URI (Uniform Resource Identifier) :
    • U = 리소스 식별하는 통일된 방식,
    • R = 자원 또는 URI로 식별할 수 있는 모든것(제한없음),
    • I = 다른 항목과 구분하는데 필요한 정보

URL 분석
ex) scheme://[userinfo@]host[:port][/path][?query][#fragment]
ex) https://www.google.com:443/search?q=hello&hl=ko
-- 프로토콜 = (https), 호스트명 = (www.google.com), 포트번호 = (443),
-- 패스 = (/search), 쿼리 파라미터 = (q=hello&hl=ko)

  1. scheme :
    1. 주로 프로토콜 사용
    2. 프로토콜 : 어떤방식으로 자원에 접근할 것인가 하는 약속 및 규칙
    3. http는 80 포트, https는 443 포트를 주로 사용한다 포트는 생략 하다
    4. https는 http에 보안을 추가 한 것이다 (HTTP Secure)
  2. userinfo :
    1. URL에 사용자정보를 포함해서 인증
    2. 거의 사용하지 않음
  3. host :
    1. 호스트명
    2. 도메인명 또는 IP주소를 직접 사용
  4. Port
    1. 접속포트
    2. 일반적으로 생략, 생략시 http는 80 포트, https는 443포트 사용
    3. 특정서버에 따로 접근해야 할 시 입력 함
  5. path
    1. 리소스 경로, 계층적 구조
      -ex) /home/file1.jpg || /items/iphone11 pro max
  6. query
    1. key = value 형태
    2. ?로 시작, &로 추가 기능 ex) ?keyA=valueA&keyB=valueB
    3. query parameter 또는 query string 등으로 불림

참조

인프런 김영한님 강의
HTTP & Network Basic

0개의 댓글