학부 과정에서 수강했었던
데이터 통신
과목을 정리한 글 목록입니다. 강의 필기 내용을 중심으로 간추려서 간단하게 다루도록 하겠습니다.
오늘은 네트워크 중에서도 네트워크를 이해하는데 필요한 기본지식들을 알아보겠습니다.
네트워크
는 컴퓨터간의 사이를 통신 링크로 연결된 집합체를 말합니다.
기기간의 네트워크 연결을 통해 우리는 파일/메일 송수신, 웹 사이트 서핑 등의 기능을 이용할 수 있습니다.
네트워크의 성능은 처리량
과 지연시간
, 신뢰성
, 보안성
을 가지고 평가하는데, 처리량은 많을수록, 지연시간은 낮을수록, 신뢰성과 보안성은 높을수록 성능이 좋다고 합니다.
지연시간은 다시 경유시간, 왕복시간, 응답시간으로 나뉘어집니다.
- 경유시간: 한 장치에서 다른 장치로 전달되는데 걸리는 시간
- 왕복시간: 출발지에서 목적지에 다녀오는데 걸리는 시간
- 응답시간: 요청에 대해 응답까지 걸리는 시간
이 세 가지 시간이 짧을 수록 지연시간이 짧다고 하며 네트워크의 성능이 좋다라고 합니다.
네트워크는 장치
와 링크
로 구성됩니다.
장치
는 내부장치
와 종단장치
로 구분됩니다.
링크
는 유선과 무선 형태의 연결이 존재합니다. 연결 형태에 따라서 링크 하나에 한 쌍의 노드가 있는 것을 일대일 연결(point to potin), 링크 하나를 여러 장치들이 공유하는 것을 멀티포인트(multipoint)연결이라고 합니다.
네트워크 토플로지(Network Topology)
는 장치와 링크가 어떻게 배치되어있는가를 의미하는 단어로, 배치 형태에 따라 크게 4가지 종류로 나뉩니다.
star형: 'hub(허브)'라는 연결 장치를 통해 각 장치를 일대일로 연결하는 형태. wifi를 사용하게 해주는 공유기를 떠올리면 쉽습니다.
bus형: 케이블 하나에 여러 시스템들이 연결되어있는 형태.
ring형: 장치와 링크들이 'ring(고리)'형태로 연결된 형태.
mesh형: 여러 장치들이 상관없이 마구 연결된 형태.
실제 네트워크는 4가지 토플로지들이 섞여서 형성되어있다고 합니다.
통신을 할 때 데이터를 아주 작은 조각들로 나누어서 보내는데 이것을 패킷(packet)
이라고 합니다. 패킷으로 나누는 이유는 커다란 데이터를 보내게 되면 네트워크(정확히는 대역폭)를 많이 점유하게 되고, 이것은 곧 네트워크 성능 저하로 이루어지기 때문에 패킷 단위로 나뉘에서 데이터 통신을 수행하게 됩니다.
대역폭 bandwidth
네트워크에서 이용 가능한 최대 전송 속도. 정보를 전송할 수 있는 단위 시간당 전송량
그래서 수신지에서는 데이터를 여러 패킷으로 나누어서 전송하고, 목적지에선 나뉘어진 패킷을 조립합니다. 이때 네트워크 지연 등의 문제로 보낸 순서대로 도착하지 않을 수가 있는데, 각각의 패킷에 보낸 순서에 대한 정보도 담겨있어서 목적지에선 해당 패킷의 정보를 읽고 올바른 순서로 조립하여 목적지에서 온전한 데이터를 보도록 해줍니다.
컴퓨터는 모든 정보를 0
과 1
로 나타냅니다.
0과 1들이 모여서 (디지털)데이터를 이루는데, 이때 0과 1에 대한 정보를 나타내는 최소 단위를 비트(bit)
라고 합니다. 그리고 1비트가 8개 모인 단위를 바이트(byte)
라고 합니다. 컴퓨터는 바이트 단위를 기본 단위로 가지고 데이터를 처리합니다.
8bit = 1byte
네트워크는 그 범위(크기), 소유권, 구조에 따라 LAN, MAN, WAN
으로 분류해서 부르기도 합니다.
LAN(랜, Local Area Network)
은 한 건물 내부를 범위로하여 장치들이 연결된 네트워크를 부르는 말입니다. 우리가 집에서 사용하는 네트워크나, 회사에서 사용하는 네트워크가 랜에 속합니다.
MAN(맨, Metropolitan Area Network)
은 도시 규모 정도의 크기를 가진 네트워크를 부르는 말입니다.
WAN(왠, Wide Area Network)
광역적으로 구축된 네트워크를 부르는 말입니다. 우리가 인터넷
이라고 하는 것으로, 인터넷 서비스 제공자(대표적으로 국내의 KT, SKT, U+)가 왠에 속합니다.
네트워크에서 데이터를 통신하기 위해서는 어떤 규칙(약속)이 있어야합니다. 우리가 통신을 하는 데이터는 단순히 문자만 있는 것이 아니라 이미지, 파일, 동영상 등 다양한 파일들이 있기 때문이죠. 그래서 네트워크에서 통신하는 데이터의 종류나 통신 방식에 따라 다양한 규칙을 정해놨는데 이 규칙을 프로토콜(protocol)
이라고 부릅니다.
예를들면 우리가 외국인과 대화를 한다고 할 때, 서로 자국의 언어를 사용하는 경우 말이 통하지 않아서 의사소통이 불가능합니다. 이때 영어를 쓰자라는 규칙(프로토콜)을 한다면 그때는 의사소통이 가능해 진다는 것을 생각하면 됩니다.
대표적인 프로토콜엔 다음과 같은 것들이 있습니다.
- FTP: 파일 송수신 프로토콜
- SMPT: 전자 우편 송수신 프로토콜
- Telnet: 원격 접속 프로토콜
- HTTP:
www
서비스를 제공하는 프로토콜이 외에도 더 많은 프로토콜이 존재하기에 기회가 된다면 소개하도록 하겠습니다.
이번 포스트에선 네트워크의 개요와 네트워크를 하기전 알아둘 기본적인 상식에 대해 알아보았습니다. 오늘 소개한 개념들중 몇 가지는 나중에 더 자세한 내용으로 다시 등장할 예정입니다.