본문 바로가기
Network tech/네트워크 기초

통신에서 사용하는 언어, 프로토콜은 무엇일까?

by 어깨 :) 2023. 2. 26.
728x90

우리는 평소에 생활 속에서 언어를 사용하며 살아갑니다. 

 

예를 들면 한국어나 영어와 같은 언어로 대화를 하는 것처럼, 컴퓨터 통신에서는 네트워크 아키텍처를 이용합니다. 즉, 대화에 사용하는 언어에 해당하는 것이 네트워크 아키텍처입니다.

 

 

 

 

 

언어에는 문자 표기법, 발음, 문법 등 다양한 규칙이 있습니다. 네트워크 아키텍처도 마찬가지입니다. 통신 상대를 지정하는 법, 다시 말해 주소나 데이터 형식, 통신 절차 등의 규칙이 필요합니다. 통신에 필요한 규칙을 프로토콜이라고 합니다.

프로토콜의 집합이 바로 네트워크 아키텍처입니다.

 

서로 같은 언어로 대화하는 것처럼, 컴퓨터끼리의 통신에서도 같은 네트워크 아키텍처를 이용할 필요가 있습니다.

 

 

 

 

 

그럼 프로토콜은 무엇일까요? 바로 시작합니다!!



 

 

 

 

 

프로토콜은 규정이나 규약과 관련된 내용을 언급할 때 프로토콜이라는 용어를 사용합니다. 네트워크에서도 통신할 때의 규약을 프로토콜이라는 용어를 사용합니다. 프로토콜은 어떤 표준협회나 워킹그룹이 만들었는지 또는 어떤 회사에서 사용하느냐에 따라 특징이 많이 달라지고 다양한 프로토콜이 존재해 왔습니다. 하지만 최근에는 복잡하고 산재되어 있던 여러 가지 프로토콜 기술이 이더넷, TCP/IP 기반 프로토콜들로 변경되고 있습니다.

 

 

 

  • 물리적 측면: 데이터 전송 매체, 신호 규약, 회선 규격 등, 이더넷이 널리 쓰인다.

 

 

  • 논리적 측면: 장치들끼리 통신하기 위한 프로토콜 규격, TCP/IP가 널리 쓰인다.

 

프로토콜이라는 것이 자연어로 불리는 일반 언어와 유사하게 사용되면 이해하기 쉬울 텐데 한정된 자원으로 통신을 수행해야 하다 보니 최대한 적은 데이터를 이용해 효율적인 프로토콜을 정의하고 사용해야 했습니다. 네트워크 서비스들이 처음 개발되었던 1900년대의 네트워크와 컴퓨팅 환경은 지금은 상상할 수 조차 없을 만큼 열악해 자연어를 처리할 수 없었습니다. 

 

 

 

적은 컴퓨팅 자원과 매우 느린 네트워크 속도를 이용해 최대한 효율적으로 통신하는 것이 목표이다 보니 대부분의 프로토콜이 문자 기반이 아닌 2진수 비트 기반으로 만들어졌습니다. 최소한의 비트로 내용을 전송하기 위해서는 매우 치밀하게 서로 간의 약속을 정의해야 했습니다. 몇 번째 전기 신호는 까다롭기에 약속을 철저히 지켜야 통신을 수행할 수 있었습니다. 물론 애플리케이션 레벨의 프로토콜은 비트 기반이 아닌 문자 기반 프로토콜이 많이 사용되고 있습니다. HTTP와 SMTP와 같은 프로토콜이 대표적입니다. 비트로 메시지를 전달하지 않고 문자 자태를 이용해 헤더와 헤더값, 데이터를 표현하고 전송합니다. 

 

프로토컬 해더 예시

 

 

위에 말이 어려우니 조금 더 이해하기 쉽게 설명해 보겠습니다.

 

프로토콜은 컴퓨터나 통신 장비 사이에 메시지를 주고받는 양식과 규칙을 말합니다. 우리가 서로 약속을 잡을 때 어디서 만날지, 몇 시에 만날지, 무엇을 할지 등을 정하는 것과 비슷합니다. 또 택배나 우편물을 보낼 때 받는 사람의 정보와 주소, 보내는 사람의 정보와 주소를 기입하도록 되어 있습니다. 이처럼 어떤 사람, 물체 간에 무언가 약속을 하거나 서로 정보를 주고받을 때 서로 이해할 수 없는 언어를 사용한다거나 주고받을 데이터가 무엇인지 모른다면 통신을 할 수 없습니다. 컴퓨터와 통신기기도 마찬가지입니다. 규칙을 정해놔야 통신을 원활하게 수용할 수 있기 때문에 '프로토콜'이라는 개념이 등장한 것입니다.

 

 

이 정도까지만 이해해도 대략적인 프로토콜 흐름에 대해서는 문제없을 것 같습니다.

 

도움이 되길 바라면서 이만 마치겠습니다.

오늘도 감사합니다!

 

 

 

참고 블로그: https://better-together.tistory.com/65

 

참고서적: Gene 저 , 김성훈 역. 『그림으로 배우는 네트워크』. 영진닷컴

참고서적: 고재성, 이상훈.『IT 엔지니어를 위한 네트워크 입문』. 길벗. 2022

참고서적: 박민경. 『개발자 상식』. 로드북. 2021

728x90