Internet

Jung taeWoong·2021년 9월 10일
0

Network

목록 보기
1/9
post-thumbnail

Internet

인터넷이란?
인터넷(Internet)이란 여러 통신망을 하나로 연결한다는 의미의 ‘인터 네트워크(inter-network)’라는 말에서 시작되었으며, 이제는 전 세계 컴퓨터들을 하나로 연결하는 거대한 컴퓨터 통신망을 의미합니다

World Wide Web

  • WWWWorld Wide Web의 약자이며, 간단히 Web 또는 W3 라고도 한다.
  • CERN의 한 프로젝트로서 시작된 웹은 분산 하이퍼미디어 시스템의 하나로 전 세계에 퍼져있는 인터넷 내의 정보들이 서로 거미줄(web)처럼 연결되어 형성된 공간.
  • 디바이스에 대한 제약없이 웹 클라이언트 프로그램만 있다면 누구나 접근이 가능
  • Web으 등장으로 인터넷을 통한 다양한 멀티미디어 서비스가 가능하게 되었다.

CERN(유럽 입자 물리 연구소)
1989년 3월 스위스와 프랑스 사이에 위치한 유럽 입자 물리 연구소(CERN)의 컴퓨터과학자 팀 버너스-리(Tim Berners-Lee, 영국 옥스퍼드대학 교수)가 멀리 떨어져 있는 동료 연구자와 지식을 공유하기 위해 만들었다

IP(Internet Protocol)

  • 인터넷에 연결되어 있는 모든 장치들을 식별할 수 있도록 각각의 장비에게 부여되는 고유 주소

Protocol이란?
네트워크상에 있는 디바이스 사이에서 정확한 데이터의 전송과 수신을 하기 위한 일련의 규칙 또는 협약

IP의 역할

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

IP 패킷 정보
출발지 IP, 목적지 IP, 전송 데이터 등을 포함한 정보

IP의 한계

  • 비연결성: 패킷을 받을 대상이 없거나 서비스 불능 상태여도 패킷 전송
    • 대상 서버가 패킷을 받을 수 있는 상태인지 모름
  • 비신뢰성: 전송하는 데이터가 정확하게 갔는지 확인하지 않음
    • 목적지까지 가는 과정에서 거쳐가는 서버중에 문제가 생겨서 패킷이 소실되어도 확인 불가
    • 패킷의 용량이 크면(1500byte 이상) 나눠서 보내게 되는데 서로 다른 루트로 인해 순서가 다르게 도착할 수 있다.
  • 프로그램 구분: 같은 IP를 사용하는 서버에서 통신하는 애플리케이션이 여러개일때 구분을 못함

TCP, UDP

  • TCP(Transmission Control Protocol)
  • UDP(User Datagram Protocol)
  • OSI 참조모델전송계층에 해당되는 프로토콜이다.

OSI 참조모델
국제표준화기구(ISO)에서 개발한 모델로, 컴퓨터 네트워크 프로토콜 디자인과 통신을 계층으로 나누어 설명한 것.
일반적으로 OSI 7계층이라 불림

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

프로토콜 계층

TCP

  • 전송 제어 프로토콜(Transmission Control Protocol)
  • 전송 데이터에 출발지 Port, 목적지 Port, 전송 제어, 순서, 검증 정보 등을 추가한다.
  • IP의 한계였던 비연결성, 비신뢰성 부분을 TCP가 해결해줌

TCP 특징

  • 연결지향 - TCP 3 way handshake (가상 연결)
    • 논리적 연결(실제 연결된것은 아님)
  • 데이터 전달 보증
    • 데이터 전송시 서버가 잘 받았다면 응답 메시지를 준다.
  • 순서 보장
    • 잘못된 순서로 도착할시에 잘못온 패킷부터 다시 요청
  • 신뢰할 수 있는 프로토콜

UDP

  • 사용자 데이터그램 프로토콜(User Datagram Protocol)
  • 데이터 전달 보증 X
  • 순서 보장 X
  • 데이터 전달 및 순서가 보장되지 않지만, 단순하고 빠름
  • IP 기능에 + Port, Checksum 정도만 추가
  • 애플리케이션에서 추가 작업 필요

Cheksum이란?
체크섬은 중복 검사의 한 형태로, 오류 정정을 통해, 공간이나 시간 속에서 송신된 자료의 무결성을 보호하는 단순한 방법이다.

  • 이 메시지에 대해서 잘 왔는지 검증해주는 데이터

PORT

  • 같은 IP 내에서 프로세스를 구분하기 위한 용도
  • TCP 통신에서 패킷데이터에 PORT 번호를 추가시킨다.
  • 0 ~ 65535 할당 가능

잘알려진 PORT

Well Known Port

  • 이는 서버 측에 각 용도별로 예약되어 동작되고 있으며
  • 이를 사용하게되는 클라이언트 자신은 보통 임시(Ephemeral) 포트 번호를 이용하여 접속
  • 0 ~ 1023: Well Known Port, 사용하지 않는 것이 좋다.
  • FTP: 20, 21
  • TELNET: 23
  • HTTP: 80
  • HTTPS: 443

DNS

  • 도메인 네임 시스템(Domain Name System)
  • 각 IP주소마다 유일한 이름을 연결시키며, 평면 구조 혹은 계층구조를 갖도록 구성한다.

인터넷상에서 사용되는 호스트 컴퓨터에 할당되는 이름의 모호성과 혼란을 최소화하기 위해서 IP주소와 이름 사이에 제어가 가능한 이름 공간을 구성한 다음, 이로부터 각 호스트 컴퓨터에 이름을 부여하도록 한다.

DNS의 필요성

  • 기억하기 어려운 IP 주소를 기억하기 쉬운 도메인 이름으로 사용할 수 있다.
  • IP는 변경될수가 있는데 도메인을 지정하게되면 IP가 변경되는것과 상관없이 일관된 도메인주소를 사용할 수 있다.

Reference

profile
Front-End 😲

0개의 댓글