IP(인터넷 프로토콜)

  • IP프로토콜의 한계 비연결성
    • 패킷을 받을 대상이 없거나 서비스 불능 상태여도 패킷 전송
  • 비신뢰성
    • 중간에 패킷 소실, 패킷 순서대로 안올 경우
  • 프로그램 구분
    • 같은 IP인 서버들 구분

 

 

TCP, UDP

TCP 특징

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

• 연결지향 - TCP 3 way handshake

• 데이터 전달 보증

• 순서 보장

• 신뢰할 수 있는 프로토콜

 

UDP 특징

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

• 비연결 지향

• 데이터 전달 및 순서가 보장되지 않지만, 단순하고 빠름

• 정리

• IP와 거의 같다. +PORT +체크섬 정도만 추가

• TCP 같은 신뢰성을 유지하려면 어플리케이션에서 작업해야 함

 

 

Port

같은 IP 여러 연결 구분

총 길이는 16bit로 2의 16제곱인 0~ 65535 범위 번호를 가짐

0~1023 은  well-know 포트라 불리며, 미리 지정한 기능을 수행함(약속임)

20,21 FTP

23 telnet

80, 443  HTTP, HTTPS

 

DNS(Domain Name Server)

인간은 IP를 기억하기 어렵다. 규칙성이 없는 숫자 덩어리기 때문이다.

때문에 IP와 매핑된 이름을 부여

 

URI(Uniform Resource Identifier)

Uniform: 리소스 식별하는 통일된 방식

Resource: 자원, URI로 식별할 수 있는 모든 것(제한 없음)

Identifier: 다른 항목과 구분하는데 필요한 정보

 

URL, URN 을 포괄하는 개념

URN은 거의 쓰이질 않음

 

URL(Uniform Resource Locator)

문법  scheme://[userinfo@]host[:port][/path][?query][#fragment]

  • 스키마
    • http, ftp 같은 프로토콜
  • userinfo@
    • 말그대로 인증 정보이다
    • 내가 직접 사용해본 건 ftp를 연결할 때 인증정보를 넣어서 야용해봤다.
  • host
    • IP주소 혹은 매핑된 name 주소이다.
    • www.naver.com
  • port 는 말그대로 port number가 들어간다. 단, well-know포트를 사용한다면 생략가능하다.
    • ftp:100.100.100.100     생략했으니 기본 포트번호인 21번 사용
    • ftp:100.100.100.100:2121       기본포트가 아닌 다른 포트 사용으로 생략 불가
  • path
    • 리소스 경로가 위치한다.
  • query
    • key=value 형태로 값을 넣어 서버에게 정보를 제공한다
  • fragment
    • html 내부 북마크 등에 사용

북마크 예시

 

 

 

 

 

 

 

+ Recent posts