학교공부/[컴퓨터 네트워크]

[컴퓨터 네트워크] - 인터넷 및 프로토콜

윈디개 2025. 3. 10. 00:44

1. Internet 과 internet 차이

-Internet과 internet의 차이가 뭘까?

 사실 이 질문을 받기 전까지 차이점에 대해 깊게 생각해 본 적은 없다. 수업 시간에 처음으로 이 질문을 받았을 때 뭔가 머리를 한 대 맞은 기분이었다. 똑같은 철자에 똑같은 발음인데, 차이점이라니. 아무리 생각해도 차이점이라고는 대문자와 소문자 차이밖에 생각나지 않았다.

 

 그렇다면 과연 차이점은 무엇일까. Internet은 쉽게 말해 우리가 생각하는, 우리가 실생활에서 쓰고 있는 인터넷 그 자체이다. 예를 들면 '우리 집 인터넷이 고장 난 것 같아'에서 쓰는 인터넷을 아우르는 단어이다. internet은 interconnected network의 줄임말이다. 즉, 서로 연관된 네트워크로, 네트워크들 사이를 연결시키는 명사를 일컫는다. 핵심은 internet을 표현할 때 "network of networks" 라는 것인데, network와 networks의 차이점은 네트워크 구성요소 그림을 보면서 설명할 예정이다.

- 이 링크를 따라가면 사진을 볼 수 있다.

 

+)앞으로 컴퓨터 네트워크에서 쓰이는 인터넷은 internet이 아니라 99%는 Internet이라는 것을 기억하고 있자.

 

2. 인터넷 구성요소(bolts and nuts view)

- Hosts

 네트워크 구성요소에서 host는 end systems이다. 흔히 말하는 네트워크의 end(끝)에 있는 핸드폰, 컴퓨터, 자동차, TV 등 컴퓨팅(계산)을 할 수 있는 장치들이다(=컴퓨터). 

 또 이 host들은 네트워크의 앱(서비스)들을 구현할 수 있는 장치라고 생각하면 된다. (+이 앱들을 실행시키려면 당연히 Internet과 연결되어 있어야 하겠죠?)

 

- Pakcet Switches

 패킷 스위치에는 두 종류가 있다. 먼저 그림을 확인해보면,

router(라우터)
switch(스위치)

 둘의 또렷한 차이점을 확인할 수 있다. router는 원통모양, switch는 직육면체 모양으로 구분은 쉽게 가능하다. 그치만 router는 무엇이고, switch는 무엇일까?

 

 둘의 차이점을 설명하기 전에, Packet Switch라는 개념을 먼저 정확히 해야한다. Packet Switch의 역할은 packet들을 forward해주는 장치이다. packet은 데이터 전송 단위고 forward는 최단경로로 보낸다는 뜻인데 뒤에서 더 자세히 설명할 예정이므로 넘어가겠다. 한 줄로 설명하자면 데이터를 최단경로로 보내는 역할을 해주는 장치들이다.

 

 그렇다면 둘의 차이점은 뭘까? 그림 순서와는 반대지만 switch를 먼저 설명하려고 한다. Switch는 내부 network끼리 연결을 도와주는 장치이다. 데이터 통신과목에서 배운 Ethernet이 그 예시인데, 좀 더 자세히 설명하자면, 2계층끼리 연결해주는 장치라고 생각하면 된다.

 반면에 Router는 3계층끼리 연결을 시켜주는 장치이다. 즉 한 네트워크에서 외부 네트워크와 연결해주는 장치라고 생각하면 된다.

 

 근데 여기서 생기는 의문점, 둘의 기능이 어짜피 최단경로로 forwarding해주는 것으로 동일한데, 구분하는 이유는 뭘까? 사실 switch는 router보다 조금 더 범용적이다. 즉, router는 switch의 한 종류라고 볼 수 있다. 그럼에도 이렇게 구분하는 이유는 위에서 각 장치를 설명할 때 나왔다. 계층의 차이다. switch는 2계층 스위치고, router는 3계층 스위치이다. 컴퓨터 네트워크에서 계층별 역할이 중요하기 때문에 이름을 router와 switch로 구분했다. 아래 그림을 보면 더 이해가 쉽게 갈 수 있다.

기업 네트워크의 예시

 라우터와 스위치는 그림에서 볼 수 있듯이 금방 구분이 간다. 다시 한 번 설명하면, switch는 endpoint들을 연결시키고, 그 switch는 외부로 데이터 전송을 위해 router와 연결이 된다. router는 또 다른 network의 router와 연결돼 또 네트워크를 구성한다.(밑에 전체 그림을 보며 더 자세히 설명할 예정이다.)

 

  +) 데이터 통신에서 배운 2계층과 3계층의 차이

 데이터 통신에서 배운 내용이지만 까먹는 것을 방지하기 위해 다시 정리하면, 2계층은 MAC 주소 기반으로 데이터를 전송하고, 3계층은 IP 주소 기반으로 데이터를 전송한다. (MAC 주소는  제조업체에서 미리 준 해당 단말기의 고유 주소, IP 주소는 ISP(통신사)에서 할당해주는 고유 주소(+수 제한으로 새 연결을 할 때마다 새로 할당)이다.) 

 

- Communication links

여기서 드는 또 하나의 궁금증은 장치들만 있으면 뭐해, 장치들끼리 연결되어야 데이터를 전송하던지, 인터넷 연결을 하던지 할 수 있다. 그 연결은 다음과 같은 친구들로 가능하다. fiber(광), copper(동축), radio(무선), satellite(인공위성) 등이 있다.

 이 때, 자동으로 따라오는 개념은 얼마나 빠르게..?이다. 그 말을 조금 더 고급스럽게 하면 단위시간 당 전송률, 즉, transmission rate인데, 이를 bandwidth라고 한다. 우리 말로는 대역폭인데, 이 대역폭은 크면 클 수록 좋다. 그 이유는 물이 흐르는 파이프를 생각하면 좋은데, 파이프의 직경이 커야 물도 빠르게 흐르는 게 당연한거 아닌가. 이 bandwidth라는 개념도 자주 등장할 예정이니 기억해두자.

 

- Networks

네트워크는 기업 네트워크 예시처럼 devices, routers+switches, links의 집합체라고 생각하면 된다. 그림 상에서는 구분하기 쉽게 파란색 구름모양 처럼 하나의 네트워크를 묶어서 나타냈다.

 

Network of networks(네트워크들의 네트워크)

 앞서 설명했던 Internet = network of networks에 대해 이해하려면 위의 그림을 보면 편하다. hosts, router/switches, links 들이 모여 하나의 network를 이루고(파란색 구름모양) 그 하나의 네트워크는 또 다른 네트워크와 이어져 또 하나의 큰 네트워크를 이룬다. 그림에서 보면 6개의 네트워크가 있고 그 네트워크가 모여 사진에 나타난 전체 하나의 네트워크를 이룬다. 그 networks들의 network를 우리는 Internet이라고 부르기로 한다.

 

- ISPs protocols

  protocol은 인터넷을 사용하기 위한 규칙들이라고 생각하면 된다. protocol은 Internet 안 모든 곳에 존재한다(HTTP, streaming, video, cellular etc.). protocol에 관해서는 뒤에서 더 자세히 설명하기로 하자. 

 

- RFC, IETF

 RFC와 IETF는 기관인데, RFC(=Request for Commands)는 

 

 

3. Internet 구성 요소(services view)

 앞서, internet의 구성 요소를 그 자체의 구성요소로 분석했지만 이제는 service 측면에서 분석해보자.

 

- Infrastructure

Infrastructure는 앱에 서비스를 제공해주는 친구들이라고 생각하면 된다. 예를 들면 우리가 흔히 아는 웹 사이트, 동영상 스트리밍 서비스(OTT), 이메일 서비스, 게임, SNS 등 익숙한 친구들이 Infrastructure에 해당한다고 볼 수 있다. 이 infrastructure는 아래 그림과 같이 Internet(=Network of networks) 안에서 상호작용을 한다.

Internet 구성요소 - Infrastructure

 

4. 프로토콜(Protocol)

- Protocol

 앞서 인터넷 구성요소를 설명할 때, 프로토콜이라는 단어를 봤을 것이다. 그럼 프로토콜이 무엇일까?

 

 프로토콜은 강의록에 다음과 같이 정의되어 있다.

 Protocols define the format, order of messages sent and received among network entities, and actions taken on message transmission, receipt.

이게 뭔 뜻일까? 한국말로 번역하면(내가 아는 뜻으로..)

>프로토콜은 네트워크 객체들 사이에서 주고 받는 메세지들의 형태, 배열 그리고 메세지 전송, 수령에서 일어나는 action들을 정의한다.

 

 

프로토콜은 우리 인간들 사이에서도 일어난다. 대화를 할 때, 우리는 누가 인사를 하면 인사를 하고, 질문을 하면 그에 대한 답을 하는 등 주고받는 메세지들이 있다. 즉 약간 생물에서 빌려오자면 자극에 대한 반응..?이랄까

 

 그러나 인간이 아닌 컴퓨터 네트워크 과목이니 Network protocol에 대해서 알아보면, 컴퓨터는 인간과 같지 않다. 뭐 자극에 대한 반응이라는 점은 다르지 않지만, 컴퓨터는 더 구체적으로 규칙이 정해져 있어야 한다.

 

 교수님이 말씀하신 예를 빌리자면, 인간은 "오늘 잤어, 늦게?" 라는 답에 "어 늦게 잤어"라고 답할 수 있다. 우리는 우리가 이해하고 질문에 대한 답을 할 수 있기 때문이다. 그런데 컴퓨터는 그렇지 못하다는 것이다. 그렇기 때문에 더 구체적이고 명확한 프로토콜이 필요하다.

+) Internet에서 일어나는 모든 커뮤니케이션 활동은 프로토콜에 의해 일어난다.

 

아래 사진 예시를 보면 더 정확히 이해할 수 있다.

인간 대화에서와 Internet에서 일어나는 프로토콜 예시

 

여기까지 Internet과 internet의 차이점, 2가지 측면(nuts and bolt // services)에서의 인터넷 구성요소, 프로토콜에 대해서 알아보았다. 데이터 통신에서 처음에 다룬 내용과 같아 정리하면서 공부하는 느낌이었지만, 다음 장에서는 Internet structure와 성능에 대한 주제를 다룰 예정이다.