[컴퓨터 네트워크] CH1. 컴퓨터 네트워크와 인터넷 (1)

이얏호·2025년 2월 7일

Computer Network

목록 보기
1/1
post-thumbnail

1.1 인터넷

구성요소로 본 인터넷 (nuts and bolts)

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

처음에는 pc, 리눅스 등의 정보를 저장하고 전송하는 서버들만 컴퓨팅 장치였음

그러나 이제는 다른 비전통적인 인터넷 사물들도 인터넷에 연결되고 있다.

⇒ 이러한 장치들을 호스트, 종단 시스템이라고 부르기로 함

종단 시스템은 통신링크와 패킷 스위치의 네트워크로 연결된다.

-통신링크: fiber, radio, copper 등이 있으며 각각의 링크들은 다양한 전송률을 이용함

-패킷 스위치: 입력 통신 링크의 하나로 도착하는 패킷(데이터 덩어리) 을 받아서 출력 통신 링크의 하나로 그 패킷을 전달해줌

✅ 패킷스위치는 라우터, 링크 계층 스위치로 두 가지가 있다.

-네트워크: 장치, 라우터, 링크 등의 집합체.

-인터넷: 네트워크들의 네트워크로, ISP(인터넷 서비스 제공자)를 통해 접속할 수 있다

인터넷의 구성요소들은 인터넷에서 정보 송수신을 제어하는 여러 프로토콜 (통신 규약) 을 수행함.

❗TCP(4L 핵심포트)와 IP(3L 핵심포트)는 인터넷에서 가장 중요한 프로토콜임

서비스로 본 인터넷

인터넷은 애플리케이션에 서비스를 제공하는 Infra Structure로서도 기술할 수 있다

즉 웹서핑, 전자메일뿐만 아니라 온라인 소셜 미디어, 영화 스트리밍등도 인터넷에 포함된다.

이러한 애플리케이션은 서로 데이터를 교환하는 많은 종단 시스템을 포함하고 있다.

⇒ 그래서 분산 애플리케이션 (distributed application) 이라고 한다.

❗인터넷 애플리케이션은 종단 시스템에서 수행됨

프로그래밍 인터페이스는 분산 어플리케이션이 어떻게 수행될지 명시한다.

✋🏻 프로토콜이란 무엇인가?

Untitled
왼쪽은 사람간의 대화 (사람 프로토콜)이고 오른쪽은 컴퓨터 네트워크 프로토콜이다.

둘 다 통신하는 둘 이상의 원격 개체(사람)가 있어야하고, 모든 활동은 프로토콜(규칙)이 제어

즉, 프로토콜이란?

→ 둘 이상의 통신 개체 간에 교환되는 메시지 포맷과 순서뿐만 아니라, 메시지의 송수신과 다른 이벤트에 따른 행동들을 정의

1.2 네트워크 엣지

이제 컴퓨터 네트워크의 구성요소를 더 자세히 살펴보자

이전 장에서 배운 내용 중, 인터넷에 연결되는 컴퓨터와 그 밖의 장치를 컴네 용어로 종단 시스템 이라고 한다. 라는 사실만 기억하셈**

종단 시스템은 호스트라고도 불리는데, 호스트는 클라이언트와 서버로 구분된다.

서버는 데이터센터 내에 있다

접속 네트워크?

: 종단 시스템을 그 종단 시스템으로부터 먼 거리에 있는 다른 종단 시스템까지의 경로상에 있는 첫 번째 라우터(edge router) 에 연결하는 네트워크

Q. end system(종단 시스템)에 edge router를 어떻게 연결시킬까?

  • 홈 네트워크 가정 내의 다른 무선 장치들과 통신하는 기지국, 인터넷 접속을 제공하는 케이블 모뎀, 그리고 기지국과 케이블 모뎀을 가진 PC를 연결하는 라우터 등으로 구성됨
  • 무선 접속 네트워크 오늘날에는 이동 장치들이 많이 이용됨, 이러한 장치들은 와이파이와 달리 무선 인프라구를 채택하고 있으며, 사용자는 기지국의 수십 킬로미터 반경 내에 있으면 됨
  • 기업 접속 이더넷 기술이 가장 널리 사용되는 접속 기술이다

Host: 데이터 패킷 보내는 원리

  1. application message를 정한다
  2. 데이터를 길이가 L인 패킷들로 쪼갠다
  3. 전송률(R)로 접속 네트워크에 패킷을 전송한다

이때 패킷 전송 딜레이 = L / R

1.3 네트워크 코어

우선 네트워크 코어 함수에는 두가지 중요한 게 있다.

  1. Forwarding (=switching)
    : 패킷을 라우터의 입력 링크 -> 적절한 라우터의 출력 링크로 보내는 과정
  2. Routing
    : 패킷 라우팅 알고리즘을 통해 패킷의 전송 경로를 정하는 과정

Forwarding에는 두가지 방법이, 있는데

첫번째로는

패킷 교환 (Packet-swtiching)

이다.
: 패킷이 완전히 도착한 후에야 도착 지점을 빠져나갈 수 있다.
Untitled
L 비트 패킷을 R bps 전송률로 보낼 때, L / R 초의 패킷 전송 지연이 생긴다.

❗️queueing and packet loss

queueing: 패킷이 대기줄에 있을 때 걸리는 시간으로, queueing이 극단적인 경우에는 loss가 발생한다.

설명하자면, 도착하는 패킷이 한 링크로 전송되어야 하는데, 그 링크가 다른 패킷을 전송하고 있다면 다른 패킷은 출력 버퍼에서 대기해야 한다.
그러나, 버퍼는 크기가 유한하여 만약 버퍼가 전송 대기중인 패킷들로 꽉 차 있는 경우는 패킷 손실이 발생한다.

어떤 패킷이 손실되는 지는 경우에 따라 다르나, 뒤에서 자세히 설명하겠다.

두번째로는

회선 교환 (Circuit-swtiching)

이다.

회선 교환 네트워크에서는 종단 시스템 간에 통신을 제공하기 위해 경로 상에 필요한 자원들은 통신 세션동안 예약된다. (패킷과의 차이점)

Untitled
두 host가 통신하고 싶을 때, 네트워크는 두 host 사이에 지정된 종단 간 연결을 설정한다.
EX) 호스트A가 호스트B와 통신하기 위해 네트워크는 먼저 2개의 링크 각각에 한 회선을 예약한다.
이때, 회선은 공유하지않는다

회선 교환에서의 다중화

링크 내 한 회선은 주파수 분할 다중화 (FDM) 혹은 시분할 다중화 (TDM) 로 구현된다.

  1. FDM
    Untitled

각 회선을 지속적으로 대역폭의 일부를 얻음

  1. TDM
    Untitled

각 회선은 짧은 시간(slot)동안 주기적으로 전체 대역폭을 얻음

패킷 교환 VS 회선 교환

예를 들어, 사용자가 1 Gbps 링크를 공유하고, 각 사용자는 활동 시간에 100Mbps 속도이고 전체 시간에서 10%만 활동한다고 가정하자

그러면 얼마나 많은 사용자가 이 네트워크를 이용할 수 있는가?
1. 회선 교환일 경우 : 10명 (1Gbps/100Mbps)
2. 패킷 교환일 경우 : 만약 35명의 사용자가 있다면, 11명 이상의 사용자가 동시에 활동할 확률은 0.0004이다.

-> 따라서 이 경우에는 패킷 교환이 더 우수하다.

❓ 두 방식의 가장 큰 차이점 ❓
회선 교환은 요구에 관계없이 미리 전송 링크를 할당하는 반면,
패킷 교환은 요구할 때만 링크를 할당한다.

-> 즉, 패킷 교환은 회선 교환처럼 사용하지않는 링크 시간에는 링크를 할당할 필요가 없다.
물론 지나친 혼잡 문제(패킷 지연&손실)라는 단점도 있다.

0개의 댓글