본문 바로가기

네트워크

[ 혼자 공부하는 네트워크 ] 네트워크 기초 강의 1~5강

네트워크(Computer network, 컴퓨터 네트워크) 는 여러 개의 장치가 마치 그물처럼(net) 서로 연결되어 정보를 주고받을수 있는 통신망이고, 통신망은 그래프라는 자료구조의 형태를 띄고 있다. 그래프는 노드와 간선으로 이루어져 있고, 자료구조중 하나의 개념이다. 자료구조는 데이터를 어떤 형태로 표현할 것인지를 나타내는 컴퓨터 공학과의 학문이다. 네트워크는 여러 개가 있을 수 있고,  각기 다른 네트워크들은 또 하나의 네트워크를 이룬다. 이렇게 여러 네트워크를 연결한 네트워크의 네트워크를 인터넷이라고 한다. 네트워크를 통해 정보를 주고받는 기기는 하나의 네트워크 안에서 정보를 주고받을 수 있고, 네트워크간(인터넷 범위에서)에도 정보를 주고받을 수 있다.

 

(컴퓨터) 네트워크는 그래프의 형태로 나타낼 수 있다. 그래프는 자료구조의 하나고, 자료구조는 데이터의 구조를 어떠한 형태로 나타내는 것이다. 그래프는 노드(정점)와 간선(엣지, 링크)으로 이루어진(연결된) 자료구조다. 컴퓨터 네트워크는 그래프의 형태를 띄고 있다. 노드(정점, 데스크탑 컴퓨터, 스마트폰 등 주로 사용하는 네트워크와 연결된 기기들)들은 (네트워크의 자료구조인)그래프에서 보통 가장자리에 위치해 있다. 네트워크와 연결된 기기들은 가장자리 노드인 경우가 많다. 가장자리에 위치해있는 노드들을 연결하는 공유기를 비롯한 각종 네트워크 장비들은 주로 중간에 위치한 노드인 경우가 많다. 이러한 노드들을 연결하는 링크(간선) 즉 유선/무선의 연결매체(케이블과 와이파이 등)가 있고, (연결매체를 통해)노드간 주고받는 정보(메세지)로 네트워크가 구성되어 있다.

 

네트워크의 구조

호스트: 그래프의 형태에서 가장 자리에 위치한 노드들이고, 호스트는 네트워크를 통해서 주고받는 정보를 최초로 만들어서 송신하거나 최종적으로 수신하는 기기다. 호스트는 역할에 따라 요청을 보내는 클라이언트와 요청에 대한 응답을 하는 서버로 구분된다. 클라이언트는 요청을 보내고, 서버는 해당 요청에 대한 응답을 보낸다. 클라이언트는 서버에 요청을 보내는 호스트고, 서버는 요청에 대한 응답을 보내는 호스트다. 

네트워크 장비: 호스트간 주고받을수 있는 정보가 거치는 중간 노드를 의미하며 그 예로는 이더넷 허브, 스위치,  라우터, 공유기 등이 있다. 호스트간 주고받는 정보가 수신지까지 안정적이고 안전하게 전송하는 역할을 한다.

통신매체: 각 노드를 연결하는 간선(링크)이고,  통신매체는 유선매체(케이블)와 무선매체(와이파이)로 구분된다.

메시지: 통신 매체로 연결된 노드가 주고받는 정보로 웹 페이지, 파일, 메일 등이 있다.

 

네트워크의 분류

컴퓨터 네트워크는 범위에 따라 LAN과 WAN으로 분류할 수 있다.

LAN(Local Area Network)은 가까운 지역을 연결한 근거리 통신망, 가정집/사무실/다른 국가의 가정 등 한 눈에 볼 수 있고, 한정된 범위에 구축된 네트워크를 예로 들 수 있다. 개발자가 구축하고, 관리하는 네트워크가 대부분 LAN이다.

WAN(Wide Area Network)은 먼 지역을 연결하는 광역 통신망이고,

핵심은 다른 LAN에 속한 호스트와 메시지를 주고받을 때 필요하다.

예를 들어 인터넷이 WAN으로 분류될 수 있는 네트워크인데, 내가 속한 가정집에서 다른 국가의 가정에 속한 기기와 통신하려면 LAN끼리 통신해야하고, 이 경우에 인터넷과 같은 WAN이 필요하다.

 

WAN은 주로 ISP(Internet Service Provider)라는 특별한 업체에서 구축하고 관리한다.

국내의 대표적인 ISP는 KT, LG유플러스, SK브로드밴드 등이 있고, 이 업체들은 사용자에게

인터넷과 같은 WAN에 연결 가능한 전송로를 임대하는 등 WAN과 관련한 다양한 서비스를 제공한다.

 

네트워크는 범위에 따라(LAN/WAN) 그리고 메시지 교환 방식에 따라 네트워크가 분류된다.

메시지 교환 방식에 따른 네트워크 분류

메시지를 어떻게 교환하는지에 따라 회선 교환 방식(회선 교환 네트워크)과 패킷 교환 방식(패킷 교환 네트워크)으로 분류된다.

회선 교환 방식은 호스트끼리 메시지를 주고받기 전에 메시지 전송로인 회선을 설정한 뒤 설정된 회선을 통해 메시지를 주고받는 방식이다. 회선을 설정했다라는 의미는 두 호스트가 메시지를 주고받을 전송로를 확보하였다라고 생각하면 된다. 회선을 미리 확보하고, 그 회선을 통해서만 메시지를 주고받는 네트워크 방식이 회선 교환 네트워크다. 회선 교환 방식으로 메시지를 주고받을 수 있게 하는 네트워크 장비, 즉 호스트간 일대일 전송로를 확보하는 네트워크 장비를 회선 스위치라고 한다. 회선 교환 방식으로 메시지를 주고 받는 회선 교환 네트워크의 장점은 두 호스트간 전송로를 미리 확보하고, 확보된 전송로를 통해 메시지를 송수신하기 때문에 주어진 시간 동안 전송되는 정보의 양이 비교적 일정하다. 단점은 회선의 이용 효율이 낮아질 수 있다. 메시지 전송할 전송로를 확보한 뒤 주고받는 메시지의 양이 적거나 메시지를 주고받지도 않으면서 점유만 한다면 회선의 이용도가 낮아질 수 있고, 이는 비효율적이라고 할 수 있다. 회선을 이용하지도 않으면서 혹은 회선의 이용도가 적으면서 회선을 점유하는 낭비로 인해 회선의 이용 효율이 낮아질 수 있다.

회선 교환 방식의 단점을 보완한 패킷 교환 방식(패킷 교환 네트워크)은 메시지를 패킷(packet)이라는 단위로 쪼개어 전송하고, 쪼개어 전송된 패킷들은 수신지에서 재조립된다. 패킷은 패킷 교환 네트워크상의 송수신 단위다. 회선 교환 방식에 비해 메시지 전송로의 공유가 더 쉽고 메시지 전송로의 이용 효율이 높다. 현대 인터넷은 대부분 패킷 교환 방식을 이용한다. 패킷들은 각기 다른 전송로를 통해 수신지까지 이동할 수 있고, 각기 다른 패킷들은 도착하는 순서가 다를 수 있다. 패킷 교환 방식에서 주로 사용되는 네트워크 장비에는 패킷 스위치가 있다. 패킷 스위치는 패킷의 송수신지를 식별하고(스위치), 패킷이 이동할 최적의 경로를 결정(라우터)한다. 

 

패킷의 구조

네트워크 패킷에서 실제로 주고받고자 하는 데이터는 페이로드(payload)라고 하고,

페이로드가 어떤 호스트가 보낸 패킷인지, 누구에게 가야하는 패킷인지 등이 적혀있는 헤더 또는 트레일러(부가 정보 또는 제어 정보)가 패킷에 적혀있다. 오늘날 인터넷은 패킷이라는 단위로 메시지를 주고받는 방식인 패킷 교환 네트워크가 대부분이고,

그 주고받는 메시지의 기본 단위인 패킷은 크게 전송하고자 하는 데이터인 페이로드, 그 패킷에 대한 부가정보 또는 제어정보인 헤더, 트레일러로 구성된다. 대부분의 경우 헤더는 반드시 포함되어 있고, 트레일러는 없을 수도 있다.

헤더(header)에 담기는 대표적인 정보는 주소다. 송수신지를 특정하는 정보, 예를 들어 IP주소와 MAC주소가 있다.

수신지(주소)가 있으면 누구에게 어떻게 전송할지를 지정할 수 있다는 것, 여기서 '누구에게' 는 특정 기기가 될 수 있고,

같은 네트워크 내 모든 기기가 될 수 있고, 같은 그룹에 속한 기기 등이 될 수 있다. 주소만 있다면 다양한 유형에 전송할 수 있다.

 

송수신지 유형별 전송 방식

유니캐스트(unicast): 하나의 송신지와 하나의 수신지가 일대일로 메시지를 주고받는 방식 (가장 일반적인 송수신 형태)

브로드캐스트(broadcast): 네트워크상의 모든 호스트에게 전송한다. 브로드캐스트 도메인은 브로드캐스트가 전송되는 범위를 의미하는데, 근거리를 연결하는 LAN의 범위를 브로드캐스트 도메인으로 보는 경우가 많다.

 

두 대의 컴퓨터(호스트)가 정보(패킷)를 주고받는 과정에서 발생하는 자세한 일들

네트워크에 연결된 기기(호스트)간 패킷을 주고받으려면 언어가 통해야 한다.

네트워크 세상에서 패킷이 올바르게 송수신 되려면 반드시 언어가 통해야 하는데 네트워크 세상의 언어를 프로토콜이라고 한다. 

프로토콜이란 노드간에 정보를 올바르게 주고받기 위해 합의된 규칙이나 방법을 의미한다.

 

IP라고 하는 합의된 규칙이나 방법을 통해 정보를 주고받으면 패킷을 수신지까지 올바르게 전달할 수 있다.

프로토콜의 종류중 IP는 패킷을 수신지까지 올바르게 전달하기 위한 규칙이나 방법이다.

 

ARP는 IP주소를 MAC주소로 대응하기 위해 사용되는 프로토콜이다.

ARP(프로토콜중 하나) 방식으로 정보를 주고받으면 IP주소를 통해 MAC주소를 알아낼 수 있다.

 

HTTP라고 하는 규칙보다 HTTPS라고 하는 규칙으로 정보를 주고받으면 보안상 더 안전하다.

HTTPS는 보안상 더 안전하다.

 

TCP라고 하는 규칙으로 메시지를 주고받으면 UDP라고 하는 규칙으로 메시지를 주고받는 것보다 일반적으로 느리지만확실하게 메시지를 주고받을 수 있는 방법이다. TCP는 메시지를 더 확실하게 전달할 수 있다.

 

현대에는 대부분 패킷 교환 네트워크를 사용하고,

노드간 정보를 주고 받기 위한 데이터 최소 단위인 패킷은

네트워크상의 언어인 프로토콜(규칙이나 방식) 형식에 따라 만들어지기 때문에

프로토콜의 종류에 따라 패킷의 헤더가 달라질 수 있다.

 

참고

[한빛미디어 youtube] 네트워크 기초 강의

'네트워크' 카테고리의 다른 글

[ 혼자 공부하는 네트워크 ] 6강~11강  (4) 2024.09.01