왜 인터넷을 사용해야 하는가?

인터넷을 한 줄로 정의해보면, 표준화된 프로토콜로 서로 연결되어 통신하는 컴퓨터 네트워크라고 할 수 있다.
이런 정의를 바탕으로 왜 인터넷을 사용해야 하는가? 라고 묻는다면,
너무 당연한 대답이지만 통신하기 위해서라고 말할 수 있을 것 같다.

그렇다면, 컴퓨터를 통해 통신하기 위해선 어떻게 해야할까?

Protocol

어느날 외계인이 눈앞에 나타났다고 가정해보자.
나는 외계인과 대화를 시도하기 위해 Global Standard 인 영어로 인사말을 전했다. 'Hello?'
불행히도 외계인의 언어체계는 영어를 사용하지 않고 있어서 전혀 의사소통이 되지 않았다…

  • 위 이야기에서 외계인과 대화에 실패한 이유는 무엇일까?
  • 언어체계가 다르기 때문이다.

Protocol 이란 위의 이야기에서 언어체계같은 약속, 규율을 의미한다.
01로 이루어진 컴퓨터 체계에서 서로 다른 컴퓨터가 통신을 하기 위해선, Protocol이 필요하다.

TCP / IP 5 Layer

이전에 통신을 하기 위해선 프로토콜이 필요하다고 알게되었다.
그렇다면 프로토콜은 실제로 어떤 구조로 되어 있을까?
그 답은 TCP / IP 5 계층이다.

왜 Layer(계층)구조인가?

  • 역할과 책임이 분리된다
  • 각 계층은 독립적인 역할을 수행할 수 있다

1 Layer : Physical Layer

  • 전기적, 기계적 특성을 이용해 데이터를 전송
  • 데이터 전달을 위한 계층(소프트웨어 적으로 에러체크 등의 기능은 전혀 없음)
  • 대표장비 : 케이블, 리피터, 허브
  • MAC주소가 이 계층에 해당
  • Frame 단위로 전송
    • 주소와 제어정보를 헤더와 트레일러에 추가
    • 데이터 앞뒤에 특정한 비트열 추가(Framing)
  • 대표장비 : 브릿지

3 Layer : Network Layer

  • IP 주소를 이용해 길을 찾고,
  • 다음 라우터에게 패킷을 넘겨준다
  • 라우팅에 집중된 계층
  • Packet 단위
  • 대표장비 : 라우터, L3 Switch, IP공유기

4 Layer : Transport Layer

  • 종단간(End - To - End) 신뢰성 있고 효율적인 데이터 전송을 보장함
  • 오류 검출, 복구, 흐름제어, 중복검사 등을 관리
  • Port 번호가 사용됨
  • 주로 TCP(Transmission Control Protocol)를 이용함
  • 3 - way Handshake
  • Stateful

5 Layer : Application Layer

  • OSI 7 Layer에서 Session, Presentation, Application Layer가 여기에 해당
  • HTTP, FTP, TFTP, TELNET, SMTP, POP3, SSH 등의 당양한 프로토콜이 존재
  • 사용자 응용프로그램 인터페이스 담당

캡슐화

Protocol 설명 시, 컴퓨터는 결국 01로 이루어진 데이터를 다루게 된다고 하였다.
이를 그림으로 간략하게 설명하자면 아래와 같다.

결론

인터넷은 컴퓨터통신을 하기 위해 만들어진 기술이다.
이런 인터넷이 가능하려면 하드웨어적 / 소프트웨어 적인 약속이 필요한데,
이 약속을 Protocol(프로토콜)이라고 한다.

참고자료