일반적으로 통용되는 IT에서의 사용되는 정의는 두 대 이상의 컴퓨터들을 연결하고 서로 통신할 수 있는 링크의 조합
을 네트워크라고 말합니다.
- 물리적 네트워크 : 네트워크를 구성하는 하드웨어 (어댑터, 케이블 및 전화선과 같은 장비)
- 논리적 네트워크 : 소프트웨어 및 개념 모델
컴퓨터 네트워크는 General-purpse programmable hardware
에 기초하여 만들어져있고 ‘전화’나 ‘tv 신호 전달’과 같은 특정 어플리케이션에 최적화되어 있기보다 다양한 어플리케이션의 데이터를 전달할 수 있으며, 광범위하고 지속적으로 성장하는 어플리케이션을 지원합니다.
위에서 설명한 것처럼 모든 네트워크 통신에는 하드웨어 및 소프트웨어가 사용됩니다.
하드웨어
: 물리적 네트워크에 연결되는 물리적 장비. 소프트웨어
: 특정 시스템 조작과 연관된 프로그램 및 장치 드라이버로 구성됩니다.이렇게 전세계를 연결하고 있는 하드웨어들을 노드와 링크로 표현할 수 있습니다. 가장 낮은 단계의 네트워크는 동축 케이블이나 광섬유 등을 이용하여 두 대 이상의 컴퓨터가 직접 연결되어 이루어집니다. 여기서 연결 매체가 되어주는 동축 케이블과 광섬유를 링크
라고 부릅니다. 그리고 링크를 통해 연결된 컴퓨터들을 노드
라고 부릅니다.
컴퓨터 네트워크 사이의 데이터는 전송과 교환을 통해 링크 사이에서 움직입니다. 이 중에서 전송(Transmission)
은 특정한 물리 매체에 의하여 일대일로 직접 연결된 두 시스템 간의 신뢰성있는 데이터 전송을 보장을 목표로 하며 라우팅 개념을 포함하지 않습니다.
컴퓨터 네트워크에서의 데이터 전송 방식은 아래처럼 구분할 수 있습니다.
- 방향에 따른 데이터 전송
- 직렬 전송과 병렬 전송
- 동기 전송과 비동기 전송
그럼 이제 1번부터 전송 방식에 대해 알아보겠습니다.
이미지와 같이 방향에 따른 데이터 전송의 종류는 아래와 같습니다.
- 단방향 통신 (Simplex Mode)
- 반이중 통신 (Half Duplex)
- 전이중 통신 (Full Duplex)
단방향 통신
반이중 통신
전이중 통신
다음으로 직렬전송과 병렬전송은 데이터 전송 방식중의 하나이며 공통점도 갖고 있지만 몇몇 차이점도 갖고 있습니다. 둘을 구분짓는 가장 큰 차이점은 단위 시간 당 직렬전송에서는 bit-by-bit
전송이 이루어진다는 반면, 병렬 전송은 1byte(8 bits)
전송이 이루어진다는 점입니다. 또다른 차이점으로는, 병렬 전송은 이러한 특성에 의해 시간에 민감한 한편 직렬전송은 그렇지 않다는 점도 있습니다.
위 이미지에서와 같이, 직렬전송은 한 컴퓨터 시스템에서 다른 컴퓨터 시스템으로 data bit가 흐릅니다. 데이터의 각 비트는 고유한 클럭 펄스 속도를 갖습니다.
직렬 전송에선 Parity bit
라고 불리는 시작과 끝을 알리는 start bit, stop bit가 전달 됩니다. 이들을 포함하여 한 번에 8비트가 전송됩니다.
이 직렬 전송의 유형에는 두 가지가 있습니다.
- 비동기 직렬 전송
- 동기식 직렬 전송
먼저 비동기 직렬 전송은, 모든 byte에 추가 bit를 붙여 수신자에게 새로운 데이터를 전송했음을 알립니다. 보통 start bit는 0으로, stop bit는 1로 보냅니다.
동기식 직렬 전송에는 추가 비트가 없습니다. 대신, data는 수많은 바이트로 구성된 프레임의 형태로 전송됩니다. 또, 동기 직렬 전송을 세부적으로 나누면 아래와 같은 방식도 존재합니다.
병렬전송은 한 컴퓨터 시스템에서 다른 컴퓨터 시스템으로 수많은 bit들을 동시에 전송하는 것을 의미합니다. 병렬전송은 직렬전송보다 bit를 전송하는데 걸리는 시간이 빠르기에 단거리 통신에 쓰입니다. 또한 컴퓨터나 통신 시스템 같은 전자 장비는 내부에 병렬 회로를 사용하기 때문에 하드웨어 적으로도 적합하며 직렬전송에 비해 유리합니다. 하지만 장단점 역시 존재합니다.
이렇게 방향에 따른 데이터 전송
과 직렬전송과 병렬전송
, 동기전송과 비동기 전송
을 알아보며 데이터 전송 방식의 구분에 대해서 알아보았습니다. 이제 다음으로 컴퓨터 네트워크에서 데이터를 전송하는 방식에 대해 알아보겠습니다.
앞에서 설명한 것처럼, 네트워크의 연결은 노드와 링크로 이루어집니다. 이때 노드와 링크의 배열을 Network Topology라 부릅니다. 다양한 방식으로 네트워크 토폴로지를 구성할 수 있습니다. 노드와 링크의 배열인 토폴로지의 몇 가지 유형은 아래와 같습니다.
- 점대점 (Point-to-Point)
- 스타형 (Start)
- 트리 (Tree)
- Ring
- 완전형
- 불규칙형
- 브로드캐스팅 (Broadcasting)
- 버스형
- 링형
- 멀티 포인트 (Multipoint)
- 유니캐스팅
- 브로드캐스팅
- 멀티캐스팅
여기까지, 컴퓨터 네트워크 데이터 전송과 교환에 대해 알아보았으며 다음 포스트로 넘어가 프로토콜의 개념과 HTTP, OSI 7 Layer, TCP/IP과 같은 프로토콜 계층에 대해 알아보겠습니다.
참고자료
네트워크 및 통신 개념
네트워크-네트워크-개념과-연결방식
기술 면접 대비 CS 전공 핵심요약집
Difference between Serial and Parallel Transmission