네트워크 관리사(2023.05.04 - 2023.05.20)

네트워크, 데이터 전송, 패킷 교환

킹버거 2024. 11. 5. 19:09

네트워크 관리사, 정보처리기사 등 자격증 취득을 위해

이전에 취업 교육을 받으며 공부했던 내용을 복습하며

게시글을 작성하려고 합니다.

교육장에서 사용했던 강의 교안과 똑똑한 챗지피티를 

활용하여 작성하는 글이므로 무조건적인 신뢰는 위험합니다.

더블체크는 필수이며 되도록 참고용으로만 봐주시길 바라요. 


네트워크 프로토콜(Network protocol)

- 쉽게 이야기하면, 둘 이상의 통신 개체끼리 통신하는 규칙이라고 이해할 수 있다. 서로 데이터를 주고 받을 때 어떤 메시지 포맷과 순서로 주고 받을지, 만일 데이터를 정상적으로 전달받지 못 했을 때 어떻게 행동할지 등을 정해놓은 약속이다.

 

프로토콜은 네트워크 상에서 두 개 이상의 통신 개체가 데이터를 교환할 때 따라야 하는 표준화된 통신 규칙 집합이다. 프로토콜은 메시지의 포맷과 전송 순서를 정의할 뿐만 아니라, 송신과 수신 과정에서 발생할 수 있는 다양한 이벤트에 따른 처리 방식을 규정한다. 

 

즉, 프로토콜은 데이터의 캡슐화, 전송, 수신, 오류 검출 및 재전송 등 통신의 각 단계에서 일어나는 행동을 표준화하여 서로 다른 시스템 간의 **상호 운용성(interoperability)**을 보장한다. 대표적인 예로 TCP/IP, HTTP, FTP 등이 있으며, 각각이 특정 네트워크 계층에서 수행해야 할 역할과 절차를 엄격하게 정의하고 있다. 

이처럼 프로토콜은 네트워크 통신에서 통신의 신뢰성효율성을 확보하는 핵심적인 역할을 한다. 


데이터 전송 방식 

1) 회선 교환 (Circuit Switching)

회선 교환 방식은 통신하는 두 지점 사이에 전용 회선을 확보하고, 통신 세션이 끝날 때까지 이를 유지하는 방식이다.

이 방식은 한 번 연결된 회선을 통해 안정적으로 데이터를 주고받을 수 있어 통신 품질이 매우 안정적이다. 

주로 전화망과 같은 방송 통신에 사용되며, 예약된 자원을 쓰기 때문에 대역폭을 독점한다. 다만, 이런 고정된 연결로 인해 비용이 높고, 회선을 효율적으로 사용하지 못하는 경우도 발생할 수 있다. 

 

* 회선: 송수신자 간의 통신이 이루어지는 동안 특정 경로를 전용으로 확보하는 연결, 통신이 이루어지는 동안 경로에 위치한 스위치들이 서로 연결된 상태를 유지하여 데이터를 주고받을 수 있도록 한다. 

* 회선은 네트워크에 일정한 전송 대역폭(bandwidth)을 예약한다. 

* 통신을 위해서는 사전 회선 예약이 필요하다. 

즉, 경로와 대역폭을 예약하여 독점 사용하는 것 

 

2) 패킷 교환 (Packet Switching)

패킷 교환 방식에서는 데이터를 여러 개의 작은 단위(패킷)로 나누어, 각 패킷을 독립적으로 네트워크를 통해 전송한다.

이때 각 패킷이 최종 목적지로 가는 경로가 다를 수 있으며, 최종 목적지에서 패킷들이 원래 순서대로 재조립되어 수신자가 확인하게 되는 방식이다. 

패킷 교환은 회선을 독점하지 않아 네트워크 자원을 효율적으로 사용할 수 있다. 그래서 인터넷과 같은 데이터 네트워크에서 많이 사용된다. 전용 회선보다 훨씬 비용이 저렴하지만, 통신 품질이 일정하게 보장되지 않을 수 있고 혼잡한 상황에서는 지연이나 손실이 발생할 수 있다. 


패킷 교환 (Packet Switching) 구현 방식  

1) Datagram network (데이터그램 네트워크) 

- 데이터를 패킷 (또는 데이터그램) 단위로 나누어 전송하는 방식이다. 

예시) 인터넷 프로토콜(IP)

 

특징

1) 각 패킷은 독립적으로 처리되며, 각 패킷은 다음 hop까지의 경로 결정에 목적지 주소를 이용한다. 

따라서 각 패킷들은 서로 다른 경로를 통해 목적지에 도달할 수 있다. 

2) 비연결형 서비스이기 때문에 통신의 유연성은 증가하지만 패킷의 순서가 뒤바뀌거나 손실될 수 있다. 

3) 신뢰성이 보장되지 않는다. 따라서 일반적으로 상위 프로토콜(예: TCP)에서 신뢰성을 제공하는 방법을 사용한다. 

 

2) Virtual circuit nework (가상 회선 네트워크)                - 지금은 거의 사용하지 않는다. 

- 송신자와 수신자 간의 논리적인 연결(가상 회선)을 설정하여 패킷을 전달하는 방식이다.

즉, 패킷이 전송되는 경로를 미리 설정하는 것이다. (=> 연결형

가상 회선에서는 패킷이 같은 경로를 따라 전송되기 때문에 패킷의 순서가 보장된다. 

VC 네트워크 방식은 데이터 전송 순서가 보장되어야 할 때(예: 동영상 스트리밍, 음성 통화)에 유리하다.

 

* VC ID (Virtual Circuit Identifier)

VC ID는 가상 회선에 고유하게 할당되는 식별자이다. 이는 가상 회선이 설정 될 때, 즉 통신 세션이 시작될 때 할당된다.

이때 출발지에서 목적지까지의 경로가 확립되면서 해당 가상 회선에 고유한 VC ID가 부여되는 것이다.

가상 회선에서 전송되는 패킷은 자신의 헤더에 VC ID를 포함하고, 이를 통해 다음 hop으로의 경로를 결정한다. 각 스위치(혹은 라우터)는 VC 네트워크에서의 경로를 관리하기 위해 VC ID와 관련된 정보를 유지한다. 

VC ID를 사용하면 패킷의 순서가 보장되고, 실시간 데이터 전송에 적합한 안정적인 통신이 가능하다. 

 

* VC 네트워크 방식이  회선 교환 (Circuit Switching) 방식과 유사하다고 느껴질 수 있으나 명확한 차이점이 존재한다.

회선 교환은 물리적인 회선이고 VC 네트워크 방식은 논리적인 가상 회선이다. 

또한, 회선 교환은 경로와 대역폭을 예약하지만 VC 네트워크에서는 경로만을 예약한다. 


패킷 처리 방식 

1) Cut-through 방식 

- 패킷이 네트워크 중간 노드 (예: 라우터)에 도착했을 때, 패킷의 헤더에서 목적지 주소만 확인한 후 나머지 데이터가 도착하기 전에 다음 노드로 전송하는 방식이다. 

 

장점: 전송 지연 ↓ 

단점: 오류 검출 ↓ 이므로 신뢰성 ↓ 

 

2) Fragment-free 방식 

- 패킷이 네트워크 중간 노드 (예: 라우터)에 도착했을 때, 패킷의 헤더를 포함한 처음 64byte만 확인한 후 다음 노드로 전송하는 방식이다. 

 

장점: Cut-through방식보다 오류 검출 ↑이므로 신뢰성 상대적으로 증가 

단점: Cut-through방식보다 전송 지연이 약간 증가 

 

3) Store and Forward 방식 

- 네트워크의 중간 노드 (예: 라우터)에 송신자가 보낸 패킷의 전체 데이터가 완전히 도착해야만 저장이 이루어진다.

- 네트워크의 중간 노드 (예: 라우터)에 저장된 패킷이 전송될 준비가 되면, 노드는 패킷을 다음 목적지로 전달한다. 

이 과정이 반복되어 최종 목적지에 데이터가 도착하는 것이다. 

 

장점: 오류 검출 ↑이므로 신뢰성 ↑ 

단점: 저장 과정에서 지연이 발생할 수 있으므로 실시간 전송이 필요할 땐 적합하지 않을 수 있다. 


회선 분할 방식

- 하나의 회선을 여러 사용자가 공유할 수 있도록 하여 회선을 효율적으로 사용하게 한다. 

 

1) FDM(Frequency Division Multiplexing, 주파수 분할 다중화)

동일한 회선에서 사용자들에게 각기 다른 주파수 대역을 할당하여 동시에 통신할 수 있도록 하는 방식이다. 

주파수 대역이 각 사용자가 사용할 수 있는 채널(즉, 데이터가 전송되는 통로)이다. 따라서 FDM 방식에서는 여러 개의 채널이 동시에 존재할 수 있다. 

 

장점: 동시에 데이터 전송이 가능하여 실시간 통신에 유리하다. ex) 라디오 방송 

단점: 사용하지 않는 주파수 대역이 발생하면 자원 낭비가 발생한다. 할당된 주파수 대역을 다른 사용자가 쓸 수 없기 때문이다. 

 

2) TDM(Time Division Multiplexing, 시간 분할 다중화) 

시간을 나누어 여러 사용자들이 순서대로 통신하도록 하는 방식이다. 

각 사용자에게 주기적으로 시간 슬롯을 할당하여 데이터를 전송하게 한다. 여러 사용자들이 순서대로 데이터를 주고 받기 때문에 하나의 회선을 공유할 수 있다. 

TDM 방식은 하나의 채널을 여러 사용자가 공유하여 시간에 따라 나눠 사용하는 방식이다. 

 *시간 슬롯: 각 사용자가 데이터를 전송할 수 있도록 할당된 일정한 시간 간격 

 

예시) 

A 사용자에게는 3초, B 사용자에게는 2초, C 사용자에게는 1초를 할당하면 

각 사용자들이 자신에게 할당된 시간 동안 데이터를 전송한다.

 

장점:

1) 순서대로 번갈아가며 데이터를 전송하면 하나의 회선을 공유하더라도 서로 간의 아무 간섭 없이 자원을 효율적으로 사용할 수 있다. 

2) 도청이 상대적으로 어렵다. 도청을 하려면 타겟 사용자가 데이터를 전송하는 시간 슬롯을 정확히 찾아내야 하기 때문이다. *하지만 시간 슬롯은 계속 변하기 때문에 매우 어려운 일이다. 

단점:

1) 실시간 데이터 전송이 필요한 경우 대기 시간이 발생할 수 있어 불리하다.

2) 사용자가 많아질 수록 각 사용자에게 할당되는 시간 간격이 줄어들어 속도가 느려질 수 있다. 

 

*시간 슬롯이 변하는 원인: 1) 사용자 수의 변화 2)  데이터 전송량의 변화 3) 네트워크 효율성 극대화 

     

출처) 문성기 강사님 강의 자료


통계적 다중화(Statistical Multiplexing)

- 여러 사용자들이 하나의 통신 채널을 공유할 때, 필요에 따라 동적으로 자원을 할당하는 방식이다.

- TDM 방식과 다르게 사용자가 데이터를 전송할 때만 자원을 사용한다. 

예를 들어, 한 사용자가 데이터 전송을 중단하면 그 자원은 다른 사용자에게 할당될 수 있다. 

 

단점: 특정 사용자에 대한 대역폭이 항상 보장되지 않기 때문에 혼잡한 상황에서는 전송 지연이 발생할 수 있다.