The journey to becoming a developer

My future is created by what I do today, not tomorrow.

Computer Science/Network

모두의 네트워크 1장 : 네트워크 첫걸음

Millie 2021. 10. 17. 14:49

오늘은 모두의 네트워크 10일 간의 여정의 첫 스타트이다.

처음부터 바로 어려운 내용에 돌입하지 않고 우선 아주 기초부터 알아본다.

목표는 네트워크, 패킷, LAN, WAN에 대해서 간단히라도 이해 하는 것이다.

 

Lesson 0

웹 사이트는 어떤 원리로 사용자에게 보이게 될까?

이것도 결국 다양한 네트워크 기술 덕분이다

네트워크를 알면 웹 사이트에 문제가 생겨 접속이 되지 않더라도,

원인이 무엇이고 어디에서 문제가 발생했는지 스스로 찾아낼 수 있다.

네트워크와 관련된 문제가 발생했을 때 그 원인이 무엇인지 파악하는 것은 문제 해결하는 데 매우 중요하다.

네트워크는 다양한 기능이 결합되어 있는데, 그 기능은 여러 계층(레이어) 형태로 구성되어 있다.

그 계층 구조를 이해하면 문제가 발생한 원인이 네트워크의 장비인지 애플리케이션인지 파악할 수 있다.

 

Lesson 1 : 네트워크의 구조

1. Computer Network : 컴퓨터 간의 연결

컴퓨터가 두 대 이상 연결되어 있으면 "Computer Network"라고 한다.

컴퓨터 간에 필요한 데이터(정보)를 서로 주고받을 수 있게 된다.

컴퓨터가 한 대만 있으면 할 수 있는 일이 제한되지만, 여러 대가 연결되면 다양한 일을 할 수 있다.

  • 데이터(파일) 전송
  • 웹 사이트 열람
  • 메일 송수신

 

인터넷 역시 네트워크의 종류 중 하나

인터넷은 전 세계의 큰 네트워크부터 작은 네트워크까지를 연결하는 거대한 네트워크

전 세계가 네트워크로 연결되어 있기 때문에 인터넷으로 해외 웹 사이트도 볼 수 있는 것

 

2. Packet

네트워크나 인터넷에서 데이터를 주고받으려면 규칙이 있어야 한다.

웹 브라우저에는 사진과 문자를 보여 주기 위해 필요한 규칙이 있다.

그 규칙에는 Packet을 이용한다.

패킷은 컴퓨터 간에 데이터를 주고받을 때 네트워크를 통해 전송되는 데이터의 작은 조각을 말한다.

큰 데이터는 작은 패킷으로 나누어서 보내는 것이 규칙이다.

 

데이터를 작게 나누지 않고 큰 상태 그대로 보내면 어떻게 될까?

그 큰 데이터가 네트워크의 대역폭을 너무 많이 차지(점유)해서 다른 패킷의 흐름을 막을 위험이 있다.

도로를 네트워크로 생각해 본다면, 큰 데이터를 네트워크로 내보내면 도로가 막혀서 정체되는 것처럼 네트워크도 정체가 발생할 수 있다.

 

Bandwidth(대역폭)

  • 네트워크에서 이용 가능한 최대 전송 속도로 정보를 전송할 수 있는 단위 시간당 전송량

 

용량이 큰 데이터를 패킷으로 나눠서 보내면 목적지에서는 원래 사진대로 되돌리는 작업을 해야 한다.

목적지로 보낸 패킷이 전송한 순서대로 도착하지 않을 수 있다.

패킷이 전송될 때 네트워크가 지연되어서 늦게 도착하거나 패킷이 누락되기도 한다.

송신 측에서 수신 측으로 패킷을 보낼 때는 각 패킷에 순서대로 번호를 붙여서 보낸다.

그러면 번호에 맞춰 정렬하면 되니까 늦게 도착한 패킷도 원래 위치로 돌아갈 수 있다.

이게 가능한 이유는 디지털 데이터이기 때문이다.

 

Lesson 2 : 정보의 양을 나타내는 단위, bit & byte

Digital data : bit & byte

모든 컴퓨터는 숫자 0과 1만을 다루는데, 그 0과 1의 집합을 디지털 데이터라고 한다.

  • bit : 0과 1의 정보를 나타내는 최소 단위
  • 8bit = 1byte

컴퓨터는 기본적으로 바이트 단위로 데이터를 읽고 쓰는 작업을 한다.

그래서 디지털 데이터를 만들 때는 8비트를 1바이트로 다루는 것이 좋다.

 

Character code

컴퓨터는 0과 1만 이해할 수 있기 때문에 문자를 입력하고 싶다면 문자 코드를 써야 한다.

대표적으로 ASCII code가 있다.

예를 들어 사용자가 키보드에서 c 키를 누르면 컴퓨터로 문자 코드가 전달되고, 컴퓨터는 그 키에 대응하는 문자 코드인 67을 확인하고 화면에 c를 표시하는 것이다.

네트워크에 데이터를 전송하는 경우에는 비트 정보를 전기 신호로 변환하기 때문에 실제로는 네트워크에 전기 신호가 전송되고 있다. 0과 1의 형태 그대로 전송되는 것이 아니다.

 

Lesson 3 : LAN & WAN

네트워크는 접속할 수 있는 범위에 따라 크게 두 가지 종류로 나눌 수 있다.

LAN (Local Area Network)

  • 건물 안이나 특정 지역을 범위로 하는 네트워크
  • 가정이나 빌딩 안에 있는 사무실같이 지리적으로 제한된 곳에 컴퓨터와 프린터를 연결할 수 있는 네트워크
  • 예를 들어서 집에 컴퓨터가 두 대 연결되어 있으면 그것도 LAN이라고 말할 수 있다.
  • 연결하는 거리가 짧은 만큼 신호가 약해지거나 오류가 발생할 확률도 매우 낮다.
  • 속도가 WAN보다 비교적 빠르다.

 

WAN (Wide Area network)

  • 지리적으로 넓은 범위에 구축된 네트워크
  • ISP(Internet Service Provider)가 제공하는 서비스를 사용하여 구축된 네트워크
  • LAN과 LAN을 연결하는 것으로 생각해도 된다.
  • ISP(인터넷 서비스 제공자)는 인터넷 상용 서비스 사업을 하고 있는 KT, U+, SK 브로드밴드와 같은 사업자/통신 회사를 말한다.
  • 멀리 떨어져 있는 LAN과 연결되어 있어서 신호가 약해지거나 오류가 발생할 확률이 더 높다.
  • 속도가 LAN보다 비교적 느리다.

 

보충 : 인터넷의 시작

1969년 12월, 미국 국방부의 ARPA(Advanced Research Projects Agency, 첨단연구계획국)에서는 군사 목적으로 컴퓨터 네 대를 연결했는데, 이것이 인터넷의 시작이었다.

컴퓨터 네 대는 스탠포드 연구소, 캘리포니아대학 로스앤젤레스 캠퍼스(UCLA), 캘리포니아대학 샌타바버라캠퍼스(UCSB), 유타대학에 설치되었다.

이것을 ARPA Network (ARPANET) 이라고 불렀다.

1970년대에는 ARPANET에 참가하지 않았던 미국의 대학이나 연구소에서도 유사한 네트워크가 여러 군데 생겨났고,

1980년대에는 학술 네트워크로 확대되었고,

1990년경에는 미국 전역의 네트워크가 상호 연결되었다.

그 후 상용 서비스 업체가 생겨나면서 민간에서도 인터넷을 사용할 수 있게 되었다.

 

Lesson 4 : 가정에서 하는 LAN 구성

네트워크는 크게 LAN과 WAN으로 나눌 수 있는데, 집에서 구성하는 네트워크는 LAN이다.

일반적으로 인터넷을 개통할 때는 ISP와 인터넷 회선, 이렇게 두 가지를 결정하고 계약해야 한다.

 

Broadband router(인터넷 공유기)

  • 가정에서 네트워크를 구성하려면, ISP와 네트워크를 연결하기 위해 인터넷 공유기라는 장비가 필요하다.
  • 가정이나 소규모 기업에서 인터넷에 접속할 때 쓰인다.
  • 가정용으로 만든 라우터라고 생각하면 된다.
  • 최근에는 라우터의 기능뿐만 아니라 허브, 스위칭 허브, 방화벽과 같은 다양한 기능도 제공한다.
  • 인터넷 공유기를 중심으로 내부 인터넷망(사설망)을 구성하고, 다양한 기기를 연결할 수 있다.

 

연결(접속) 방식에는 유선 랜 방식과 무선 랜 방식이 있다. 랜 케이블이 필요하면 유선이고, 필요하지 않으면 무선이다.

무선 랜 기능을 통해 더욱 다양한 네트워크를 구성할 수 있다.

 

Lesson 5 : 회사에서 하는 LAN 구성

소규모 회사(소호 기업)에서의 네트워크 구성

  • SOHO : Small Office/Hour Office

 

DMZ (DeMilitarized Zone)

가정에서의 LAN 구성과 다른 점은 DMZ라는 네트워크 영역이 있다는 것이다.

DMZ는 외부에 공개하기 위한 네트워크를 말한다.

한국어로 '비무장 지대'라고도 하는 DMZ가 네트워크에서는 이런 식으로 쓰이고 있다.

 

외부에 공개하는 서버에는 주로 웹 서버, 메일 서버, DNS 서버가 있다. 공개 목적은 다음과 같다.

  • 웹 서버 : 웹 사이트를 불특정 다수의 외부 사용자에게 공개하기 위해
  • 메일 서버 : 외부 사용자와 메일을 주고받기 위해
  • DNS 서버 : 외부에서 도메인 이름을 사용하여 회사의 서버에 접속하기 위해

 

일반적인 가정의 네트워크에서는 서버를 외부에 공개할 필요가 없기 때문에 외부에 공개하지 않는다.

회사의 직원 수가 많을수록 스위치와 같은 장비가 늘고, LAN cable의 배선도 늘어난다.

 

회사에서는 서버를 운영하기 위해 서버를 사내에 설치하거나, 데이터 센터에 두거나, 클라우드에 둘 수 있다.

  • Data center : 대량의 데이터를 보관하기 위해 데이터센터 서버나 네트워크 기기를 설치한 전용 시설
  • Cloud : 인터넷을 통해 소프트웨어나 하드웨어등의 컴퓨팅 서비스를 제공하는 것

 

사내에서 서버를 운영하는 경우, 회사 내에 서버 장비실을 두고 그곳에 랙(선반)을 설치한다.

랙 안에는 랙에 설치하기 적합한 형태와 크기를 가진 서버와 라우터와 스위치를 설치할 수 있는데, 라우터는 무선 LAN 기능이 있는 라우터를 사용하는 경우가 많다.

각 서버는 스위치와 연결하거나 무선 랜 기능을 사용해 서로 통신할 수 있다.

 

On-premise

사내나 데이터 센터에 서버를 두고 운영하는 것

클라우드와 비교할 때 자주 사용하는 용어