떠도는..개발자 취준생

네트워크 본문

네트워크

네트워크

iamjaewhan 2021. 9. 12. 22:26

네트워크는 사람과 사람의 네트워크, 도로와 철도의 네트워크와 같이 여러개의 사물혹은 객체가 연결되어있는 상태를 말한다. 앞으로 설명할 네크워크는 컴퓨터 간의 연결을 의미하는 컴퓨터 네크워크를 말하며, 네트워크가 어떠한 구조를 가지고 있는지 알아보고자 한다.

 

컴퓨터는 커다란 용량의 데이터를 지구 반대편으로 순식간에 전송하거나 메일, 웹사이트 열람과 같은 일을 수행할 수 있다. 이러한 모든 일들은 인터넷에 연결되어 가능한 일들이다. 네트워크, 인터넷 모두 흔히 사용되는 단어들이고 서로 혼용되기도 한다. 이 두 단어의 차이를 먼저 정리해보자.

 

 

네트워크

 

 

앞에서 네트워크는 컴퓨터와 컴퓨터가 연결되어있는 상태라고 설명했다. 별다른 특이점이 없는 문장 같지만 "서로 다른 두 컴퓨터가 연결되어 있는 상태" 이다. 이러한 연결되어있는 상태가 되기 위해서는 두 컴퓨터는 케이블로 연결이 되어야 하며, 동시에 여러대의 컴퓨터와 연결될 수 있다. 이렇게 2대 이상의 컴퓨터가 그물처럼 연결되어 있는 상태를 네트워크라고 하며, 다른 컴퓨터로 데이터를 주고 받을 수 있는 기본적인 전제조건이 충족된 상태인 것이다.

 

 

 

 

 

인터넷

 

네트워크가 2대 이상의 컴퓨터가 연결되어 있는 상태라고 설명했다. 기본적인 연결 방법은? 케이블이다. 한 컴퓨터가 수많은 컴퓨터와 연결되기 위해서는 수많은 케이블로 연결되어야 한다. 즉, 지구에 존재하는 모든 컴퓨터의 개수를 n개라고 하면 모든 컴퓨터들과 통신하기 위해서는?

5억개의 컴퓨터를 연결한다고 하면 필요한 선의 개수는 대략 5*1018개이다. 개수가 엄청날 뿐만 아니라 지구 반대편의 컴퓨터와 연결하기 위해서는 지구의 둘레의 반 길이의 케이블이 필요할 것이다. 이는 매우 불안정할 뿐만 아니라 비용도 매우 클 것이다. 이러한 문제를 해결하기 위해 인터넷이 등장하였고, 이 중심에 존재하는 것이 "라우터"이다.

 

 

라우터

라우터는 집에서 흔히 보이는 공유기라고 생각하면 된다. 공유기의 역할은? 통신사가 주어지는 IP주소를 사용해서 데이터를 주고받는 역할을 수행한다. 네트워크에서의 라우터도 마찬가지로 외부 네트워크와 연결되어 데이터를 외부 네트워크와 정보를 주고 받을 수 있게 되는 것이다.

위의 이더넷에서 하나의 라우터를 추가하면 컴퓨터들은 서로 연결될 필요 없이 라우터와 연결되어 서로 직접적인 연결없이도 정보를 주고 받을 수 있게 된다. 또한 라우터와 라우터의 연결을 통해 자신의 네트워크가 아닌 다른 네트워크와 연결되어 통신이 가능해진다. 이처럼 같은 네트워크뿐만 아니라 다른 네트워크와 연결되어 정보를 주고 받기 때문에 Inter-Network 상태, 즉 인터넷이 구현되는 것이다

 

그렇다면 결국 라우터들끼리 연결되어 통신하기 위해서는 결국 라우터들끼리 모두 연결되야 하는 것이 아닌가?

이러한 질문이 나올 수 있다. 원리상으로는 모든 라우터들도 마찬가지로 연결되야하지만, 인터넷은 통신 방식을 통해 이러한 문제를 해결하였다.인터넷에서는 IP주소를 사용하여 정보를 주고받는다. 단, 해당 데이터를 전송하는 컴퓨터에서 수신하는 컴퓨터로 직접 전송하는 것이 아닌, 연결된 라우터들 중에서 종착지에 더 가까운 라우터에게 데이터를 전달해주는 것이다. 이러한 과정들을 반복하여 데이터를 종착지에 전송하게 되면 모든 라우터들이 직접 연결되지 않아도 자유롭게 데이터를 전송할 수 있게 되는 것이다.

 

 

이처럼 인터넷이 동작하는데에 있어서 "망중립성의 원칙"이 중요하게 작용한다. 망중립성의 원칙이란 인터넷에서 패킷을 전달하는데 있어 차별이 없어야한다는 원칙이다. 각 라우터들이 수신자/발신자 역할을 수행하는데 이 과정에 있어서 서로 별도의 요금을 부과하지 말자는 조건이다. 따라서 망중립성의 원칙 아래에서는 인터넷에 접속하는 요금만 내면 비용없이 데이터를 주고 받을 수 있다.

 

 

 

 

 

패킷

위에서 망중립성의 원칙을 설명하며 "패킷"이라는 용어를 사용했다. 패킷이란 컴퓨터 간에 데이터를 주고받을 때 네트워크를 통해 전송되는 데이터의 형식화된 블록이다. 쉽게 말하면 큰 데이터를 작은 단위로 나누어서 전송하기 용이하게 바꾼 것이다. 네트워크에는 단위 시간당 전송량을 의미하는 대역폭이 있다. 즉, 단위 시간당 전송할 수 있는 데이터의 크기가 제한되어있다는 뜻이다. 만약 커다란 데이터를 한번에 전송하게 되면 해당 대역폭을 모두 차지하게 되어 다른 데이터들은 전송할 수 없는 상황이 발생할 수 있다. 비유하자면 제한된 왕복 4차선 도로에 커다란 트럭들이 모두 막아 빠르게 이동하거나 급하게 이동해야 하는 구급차, 소방차들이 이동할 수 없게 되는 것이다. 이러한 문제를 방지하기 위해 용량이 커다란 데이터들은 패킷이라는 작은 단위로 나누어서 전송하게 된다.

 

 

 

 

 

 

LAN / WAN

 

LAN 이란 Local Area Network의 약자로 가정, 빌딩과 같이 물리적, 지리적으로 제한된 곳에서 연결되는 네트워크이다. 흔히 생각하는 가정에서 공유기로 연결되는 컴퓨터, 핸드폰 등의 네트워크로 생각하면 된다.

WAN이란 Wide Area Network의 약자로 인터넷 서비스 제공자 (ISP : Internet Service Provider)가 제공하는 서비스를 사용하여 구축된 네트워크를 의미한다. 즉, 통신사에 비용을 지불하고 통신사를 통해 다른 네트워크와 연결되는 네트워크이다.

 

 

가정에서의 LAN 구성

 

가정에서 네트워크를 구성하기 위해서는 인터넷 공유기( 라우터 )가 필요하다. 공유기는 로컬에 연결된 기기에 IP 주소를 할당하고, 외부 네트워크에 연결된 서버에게 요청을 전송하거나 받은 응답을 요청을 응답한 기기로 전달해준다. 또한 외부 네트워크와 통신할 때 뿐만 아니라 로컬 네트워크에 연결된 기기끼리 통신하기 위해서도 공유기를 통해 데이터를 주고받게 된다. 즉 공유기는 통신 기기를 외부네트워크, 내부 네트워크를 연결해주는 역할을 수행하게 되는 것이다.

 

 

SOHO 기업에서의 LAN 구성

 

소규모 기업에서의 네트워크의 구성은 일반 가정에서 사용하는 LAN과는 차이가 있다. 일반 가정에서 사용하는 컴퓨터는 서비스를 제공하지 않지만, 기업에서 웹서비스를 제공하기 위해서는 서버를 불특정 다수의 사용자가 사용할 수 있도록 공개해야 한다. 이처럼 외부에 공개하기 위한 네트워크를 DMZ라고 하며, 외부에 공개되지 않는 내부 네트워크를 분리하여 사용한다.

두 서버는 공유기에서 분리된다. 외부에서 접근하기 위한 외부망 용도의 서버와 사내에서 사용되는 내부망 용도로 분리되며, 사내 LAN은 내부망 용도 서버의 스위치를 통해 무선, 혹은 유선으로 네트워크를 구성하게 된다.