1.1 인터넷이란 무엇인가 - Computer Network

1.1 인터넷이란 무엇인가 - Computer Network

Tag
Computer Network
Computer Science Engineering

1.1 인터넷이란 무엇인가?

위의 질문을 답하기 위한 방법으로는 다음과 같이 두 가지로 존재한다.
  1. 인터넷을 구성하는 기본적인 하드웨어 & 소프트웨어 구성요소에 대한 기술 (1.1.1)
  1. 분산 애플리케이션에 서비스를 제공하는 네트워킹 인프라스트럭처 관점에서의 인터넷을 기술 (1.1.2)

1.1.1 구성 요소로 본 인터넷

아래의 그림은 인터넷의 구성요소를 나타낸 것이다.
notion image

인터넷(Internet)

  • Network of Network
  • 전 세계적으로 수십억 개의 컴퓨팅 장치를 연결하는 컴퓨터 네트워크

호스트(host), 종단 시스템(end system)

  • 컴퓨터 네트워크에 연결된 컴퓨팅 장치
  • e.g., 서버 (데스크탑 PC, 리눅스 워크스테이션, 웹페이지 등), 인터넷에 연결된 모든 인터넷 ‘사물들’ (TV, 스마트 워치 등)
  • 통신 링크(communication link)와 패킷 스위치(packet switch)의 네트워크로 연결된다.

통신 링크(communication link)

  • 다양한 전송률(transmission rate, 링크 대역폭 또는 bandwith)을 이용해 패킷(packet = 데이터)을 전송한다.
  • 전송률의 단위 : bps(bits per second, 초당 비트 수)
  • 동축케이블, 구리선, 광케이블, 라디오 스펙트럼을 포함한 다양한 물리 매체로 구성된다.

패킷(packet)

  • 송신 종단 시스템에서 수신 종단 시스템(목적지)으로 보내진다.
  • 송신 종단 시스템이 보내고자 하는 데이터를 세그먼트(segment)로 나누고, 각 세그먼트에 헤더(header)를 부착하여 수신 종단 시스템으로 전송한다.
  • 패킷은 목적지에서 원래의 데이터로 다시 조립된다.
notion image

패킷 교환기, 패킷 스위치(packet switch)

  • 입력 통신 링크 중 하나
  • 도착하는 패킷을 받아서 출력 통신 링크의 하나로 그 패킷을 전달한다. (최종 목적지 방향으로 패킷을 전달)
  • 대표적인 두 종류
    • 링크 계층 스위치(link-layer switch) : 보통 네트워크 코어에서 사용
    • 라우터(router) : 보통 접속 네트워크에서 사용

경로(route, path)

  • 패킷이 송신 종단 시스템에서 보내진 후 수신 종단 시스템에 도달하는 동안 거쳐온 일련의 통신 링크와 패킷 스위치를 말한다.
  • 패킷은 컴퓨터 네트워크를 통한 경로를 따른다.

ISP(Internet Service Provider)

  • 패킷 스위치와 통신 링크로 이루어진 네트워크
  • 종단 시스템에게 다양한 네트워크 접속을 제공한다. (가정용 초고속 접속, 고속 LAN 접속, 이동 무선 접속 등)
  • CP(content provider)에게 인터넷 접속을 제공 → 웹 사이트나 비디오 서버를 인터넷에 직접 연결할 수 있게 된다.
  • ISP들의 상호 연결
    • 💡 인터넷은 종단 시스템을 서로 연결하는 것이므로 종단 시스템에 접속을 제공하는 ISP들도 서로 연결되어야만 한다.
    • 하위 계층 ISP는 국가 & 국제 상위 계층 ISP를 통해 서로 연결한다. - 상위 계층 ISP들은 서로 직접 연결된다.
    • 각 ISP 네트워크는 따로 관리되고, IP 프로토콜을 수행하며, 네이밍(naming)과 주소배정 방식을 따른다.

프로토콜(protocol)

  • 인터넷에서 정보의 송수신을 제어한다.
  • 가장 중요한 프로토콜 둘을 통칭하여 TCP/IP라고 한다.
    • TCP(Transmission Control Protocol)
    • IP(Internet Protocol) : 라우터와 종단 시스템 사이에서 송수신되는 패킷 포맷을 기술한다.

Standards

  • IETF(Internet Engineering Task Force)
    • 국제 인터넷 표준화 기구
    • RFC(Requests for Comment) : IETF 표준 문서
    • TCP, IP, HTTP, SMTP 같은 프로토콜을 정의
  • IEEE 802 LAN 표준위원회
    • 이더넷과 무선 와이파이 표준을 기술

1.1.2 서비스 측면에서 본 인터넷

인터넷은 애플리케이션에 서비스를 제공하는 Infrastructure

  • 애플리케이션은 서로 데이터를 교환하는 많은 종단 시스템을 포함하고 있기 때문에 분산 애플리케이션(distributed application)이라고 부른다.
  • 인터넷 애플리케이션은 종단 시스템에서 수행되며, 네트워크 코어에 있는 패킷 교환기에서 수행되지 않는다.
💡 패킷 교환기는 종단 시스템 간의 데이터 교환을 쉽게 해주지만, 데이터의 시작과 끝인 애플리케이션에는 관심을 갖지 않는다.

소켓 인터페이스(socket interface)

한 종단 시스템에서 수행되는 애플리케이션이 다른 종단 시스템에서 수행되고 있는 프로그램으로 데이터를 보내도록 하기 위해서는 인터넷에 어떻게 지시할 것인가?
한 종단 시스템에서 수행되는 프로그램이 다른 종단 시스템에서 수행되는 특정 목적지 프로그램으로 데이터를 전달하도록
어떻게 인터넷 인프라스트럭처에 요구하는지를 명시한 것을 소켓 인터페이스라고 한다.
→ 인터넷에 접속된 종단 시스템들은 소켓 인터페이스를 모두 가지고 있다.
💡 소켓 인터페이스는 송신 프로그램이 따라야 하는 규칙의 집합이며, 인터넷은 이 규칙에 따라 데이터를 목적지 프로그램으로 전달하게 된다.

1.1.3 프로토콜이란 무엇인가?

둘 이상의 통신 개체(entity)가 어떤 일을 함께 수행하려면 이들이 다같이 인식하는 프로토콜 즉, 통신 규약이 필요하다.
아래의 그림은 사람 프로토콜과 컴퓨터 네트워크 프로토콜을 나타낸 것이다.
notion image
  • 메세지의 송수신과 메시지를 송수신할 때 취하는 행동은 프로토콜의 중심에 있다.
  • 따라서 하나가 다른 프로토콜을 수행한다면 그 프로토콜은 다른 이들과 상호작용할 수 없으며, 원하는 작업을 수행할 수 없다.

네트워크 프로토콜

  • 통신하는 둘 이상의 원격 개체가 포함된 인터넷에서의 모든 활동은 프로토콜이 제어한다.
  • e.g.,
    • 혼잡 제어(congestion-control) 프로토콜 : 종단 시스템에 존재하며, 송수신자 간에 전송되는 패킷 전송률을 조절한다.
    • 라우터에서의 프로토콜 : 출발지(source)에서 목적지(destination)까지의 패킷 경로를 설정한다.
💡 프로토콜은 둘 이상의 통신 개체 간에 교환되는 메시지 포맷과 순서뿐만 아니라, 메시지의 송수신과 다른 이벤트에 따른 행동들을 정의한다.