[네트워크] CH.1 네트워크 기초 용어와 기능

Updated:

네트워크 기초 용어

  • 네트워크: 전송 매체를 매개로 서로 연결되어 데이터를 교환하는 시스템
  • 인터페이스: 시스템과 전송 매체의 연결 지점에 대한 규격
  • 프로토콜: 시스템이 데이터를 교환할 때 임의의 통신 규칙

시스템들은 물리적으로 공유하는 전송 매체에 의하여 서로 연결된다. 시스템이 전송 매체를 통해 데이터를 교환하려면 반드시 표준화된 프로토콜을 사용해야 한다. 흔히 사용하는 인터넷은 IP라는 네트워크 프로토콜을 사용하는 네트워크의 집합체이다.

네트워크 구성 요소

1.1 시스템

시스템은 내부 규칙에 따라 능동적으로 동작하는 대상을 가리킨다. 컴퓨터, 하드디스크 등과 같은 물리적인 대상뿐 아니라, MS 윈도우즈 등의 운영체제, 프로그램의 실행 상태를 의미하는 프로세스 같은 논리적인 대상들도 시스템이다.

1.2 인터페이스

시스템과 시스템을 연결하기 위한 표준화된 접근 방법이다. 예를 들어, 컴퓨터 본체와 키보드를 연결하여 제대로 동작하게 하려면 상호 간의 rs-242c, usb 등과 같은 논리적인 규격뿐만 아니라, 잭의 크기와 모양 같은 물리적인 규격도 표준화되어야 한다.

1.3 전송 매체

시스템끼리 정해진 인터페이스를 연동해 데이터를 전달하려면 물리적인 전송 수단인 전송 매체가 반드시 있어야 한다. 전송 매체는 사람의 눈으로 볼 수 있는 동축 케이블을 포함하여 소리를 전파하는 공기, 무선 신호 등 다양하게 존재한다.

인터페이스는 시스템간의 연동을 위한 논리적인 규격이고, 인터페이스에서 정해진 규칙은 매체를 통해 전송됨으로써 구현되고 동작된다고 볼 수 있다.

1.4 프로토콜

상호 연동되는 시스템이 전송 매체를 통해 데이터를 교환할 때는 표준화된 특정 규칙을 따르는데, 이 규칙을 프로토콜이라 한다. 프로토콜은 주종 관계가 아닌 동등한 위치에 있는 시스템 사이의 규칙이라는 측면이 강조되어 인터페이스와 구분된다.

1.5 네트워크

통신용 매체를 공유하는 여러 시스템이 프로토콜을 사용하여 데이터를 주고받을 떄, 이들을 하나의 단위로 통칭하여 네트워크라고 부른다. 소규모 네트워크가 모여 더 큰 네트워크를 구성할 수 있는데, 네트워크끼리는 라우터라는 중개 장비를 사용해서 연결한다.

1.6 인터넷

인터넷은 전 세계의 모든 네트워크가 유기적으로 연결되어 동작하는 통합 네트워크이다. 데이터 전달 기능에 한해서는 공통으로 IP 프로토콜을 사용한다.

1.7 표준화

서로 다른 시스템이 상호 연동해 동작하려면 표준화라는 연동 형식의 통일이 필요하다.

시스템 기초 용어

  • 노드: 데이터를 주고받을 수 있는 모든 시스템을 통칭하여 사용한다.
  • 호스트: 일반적으로 컴퓨팅 기능이 있는 시스템을 의미한다. 호스트를 세분할 때는 호스트 사이에 제공되는 서비스를 기준으로 클라이언트와 서버로 나눌 수 있다.
  • 클라이언트: 서비스를 이용하는 시스템이다.
  • 서버: 서비스를 제공하는 시스템이다.

네트워크의 기능

  1. OSI 7계층 모델

네트워크에 연결된 호스트들은 7개 계층으로 모듈화된 통신 기능을 갖추어야 한다. 사용자는 OSI 7계층 맨 위에 있는 응용 계층을 통해 데이터의 송수신을 요청하고 이 요청은 맨 아래에 있는 물리 계층을 통해 상대 호스트에 전송된다. 데이터는 수신하는 호스트에서는 송신 호스트와는 반대 방향으로 처리가 이루어진다.

1) 물리 계층

네트워크에서 호스트들이 데이터를 전송하려면 반드시 전송 매체로 연결되어 있어야 한다.

2) 데이터 링크 계층

물리 계층으로 데이터를 전송하는 과정에 잡음 등 물리적인 오류가 발생할 수 있어서 이를 감지하는 기능을 제공한다. 대표적인 물리적 오류에는 데이터 분실과 데이터 변형이 있는데 이는 송신자가 원래의 데이터를 재전송하는 방식으로 해결한다.

3) 네트워크 계층

데이터가 올바른 경로를 선택할 수 있도록 지원하는 계층이다. 중개 시스템의 기능은 일반적으로 라우터가 수행한다. 네트워크 부하가 증가하면 혼잡이 발생할 수 있어서 혼잡제어도 여기서 담당한다.

4) 전송 계층

송신 프로세스와 수신 프로세스 간의 연결 기능을 제공하고 이를 통해 프로세스 사이의 안전한 데이터 전송을 지원한다.

5) 세션 계층

전송 계층에서 제공하는 연결의 개념과 유사한 세션 연결을 지원하지만, 이보다는 더 상위의 논리적 연결이다.

6) 표현 계층

전송되는 데이터의 의미를 잃지 않도록 올바르게 표현하는 방법을 다룬다. 압축과 암호화같은 기능도 제공한다.

7) 응용 계층

사용자를 위한 다양한 네트워크 응용 환경을 제공한다.

  1. 프로토콜과 인터페이스

네트워크 사용자가 통신한다는 것은 데이터를 서로 주고받는다는 것을 의미하므로 OSI 7계층의 모듈이 유기적으로 연동되어야 한다. 각각의 계층은 정해진 방식과 절차에 따라 상대 계층과 통신하고 이 때 필요한 규칙을 프로토콜이라 한다.

상하위의 계층간에 존재하는 규칙을 인터페이스라고 하며 하위 계층이 상위 계층에 제공하는 인터페이스를 특별히 서비스라고 부른다.

  1. 인터넷 계층 구조

인터넷에서는 IP가 네트워크 계층의 기능을 수행하며, TCP와 UDP가 전송 계층의 기능을 수행한다.

  1. 인터네트워킹

네트워크와 네트워크의 연결을 인터네트워킹이라 한다. 인터넷은 IP 프로토콜을 지원하는 전 세계의 모든 네트워크가 연결된 시스템을 의미하며, 라우터라는 중개 장비를 사용해서 네트워크들을 연결한다.

4.1 네트워크의 연결

서로 독립적으로 운영되는 두 네트워크가 연동되어 정보를 교환하려면, 이를 적절히 연결하여 데이터를 중개할 수 있는 인터네트워킹 시스템이 필요하다.

4.2 게이트웨이

인터네트워킹 기능을 수행하는 시스템을 일반적으로 게이트웨이라고 부른다. 게이트웨이는 리피터, 브리지, 라우터 등으로 나뉜다.

  • 리피터: 물리 계층의 기능을 지원한다.
  • 브리지: 리피터 기능에 데이터 링크 계층의 기능이 추가되어 물리 계층에서 발생한 오류를 해결해준다.
  • 라우터: 물리, 데이터 링크, 네트워크 계층의 기능을 지원한다.
  1. 프로토콜

프로토콜은 통신 시스템이 데이터를 교환하기 위해 사용하는 통신 규칙이다. OSI 7계층 모델에서는 각 계층에서 수행하는 프로토콜이 서로 독립적이다.

네트워크 프로토콜을 사용해 데이터를 교환할 때는 먼저 데이터를 특정 형태로 규격화하는 작업이 필요하다. 다음은 OSI 7계층 모델의 계층별 데이터 단위이다.

데이터 단위 설명
APDU (Application PDU) 응용 계층에서 사용한다.
PPDU (Presentation PDU) 표현 계층에서 사용한다.
SPDU (Session PDU) 세션 계층에서 사용한다.
TPDU (Transport PDU) 전송 계층에서 사용한다. TCP에서는 세그먼트라 부르고, UDP에서는 데이터그램이라 부른다.
NPDU (Network PDU) 네트워크 계층에서 사용하며, 보통 패킷이라 부른다.
DPDU (Data PDU) 데이터 링크 계층에서 사용하며, 보통 프레임이라 부른다.

네트워크 주소의 표현

시스템을 설계할 때는 고유의 구분자가 필요하다. 구분자는 숫자로 된 주소로 표현된다. 대상을 유일하게 구별하는 구분자는 일반적으로

다음의 네 가지 특징이 있다.

  • 유일성
  • 확장성
  • 편리성
  • 정보의 함축
  1. 주소와 이름

구분자는 내부에서 처리되는 숫자 기반의 주소와 함께 사용자의 이해와 편리성을 도모하는 기호로 된 이름을 제공해야 한다.

네트워크에는 여러 종류의 주소와 이름이 존재하는데, 이는 각 계층의 기능을 담당하는 프로토콜마다 주소를 독립적으로 관리하기 때문이다.

계층 주소와 이름 종류
네트워크 계층 IP 프로토콜은 호스트를 구분하기 위하여 IP 주소 사용
데이터 링크 계층 LAN 카드별로 MAC 주소를 따로 부여
전송 계층 TCP에서는 호스트에서 수행되는 네트워크 프로세스마다 별도의 포트(Port) 주소 할당

1.1 IP 주소

IP 주소는 네트워크 계층의 기능을 수행하는 IP 프로토콜이 호스트를 구분하기 위하여 사용하는 주소 체계이다. 32비트를 8비트씩 4부분으로 나누어 각각을 점(.)으로 구분한 211.223.301.30와 같이 표기한다.

최대 주소가 32비트로 제한되어있으므로 확장성에 문제가 있다. 이를 해결하기 위하여 새로운 프로토콜인 IPv6에서는 주소 표현 공간을 128비트로 확장했다. 그리고 현재의 IP 프로토콜은 IPv4로 표현한다.

1.2 호스트 이름

인터넷에서 특정 호스트와 연결하려면 반드시 해당 호스트의 IP 주소를 알아야 한다. 그런데 숫자로 된 IP 주소는 기억하기 힘드므로 의미 파악이 쉬운 문자로 된 호스트 이름을 사용하는 것이 일반적이다.

네트워크 계층의 IP 프로토콜은 호스트를 구분하는 용도로 IP 주소만 사용한다. 그에 비해 일반 사용자는 IP 주소보다는 문자로 된 호스트 이름(예 - naver.com)을 사용하기 때문에 중간 계층에서 이를 변환하는 기능을 수행해야 한다. 따라서 가장 먼저 수행할 작업은 DNS라는 이름과 주소 변환 기능을 이용해서 IP 주소를 얻는 것이다.

DNS 시스템은 호스트 이름을 국가 도메인, 단체 종류, 단체 이름, 호스트라는 네 계층 구조로 나누고, 이들을 점(,)으로 구분해서 표기한다. 예를 들어, zebra.korea.co.kr과 같은 호스트 이름은 대한민국(kr)에 있는 일반 회사(co) 중에서 korea라는 이름의 회사에 소속된 zebra라는 호스트를 의미한다.

국가 도메인 해당 국가명 단체 종류 기관 성격
kr 한국 co 회사
jp 일본 ac 교육기관
us 미국 go 정부 소속 기관
  1. 주소 정보의 관리

일반 사용자가 호스트를 지칭할 때 사용하는 호스트 이름을 도메인 이름이라 하며, 인터넷에서는 이를 IP 주소로 변환하는 작업이 필요하다.

2.1 호스트 파일

호스트 이름과 IP 주소의 조합을 특정 파일에 기록, 관리하는 방법이 있다. 호스트 파일은일반 텍스트 문서 형식으로 보관된다.

2.2 DNS

호스트 파일로 주소와 이름 정보를 관리하는 것은 간단하지만 대부분 수동으로 작업해야 한다. 따라서 호스트 수가 증가할수록 번거롭고 특히 인터넷처럼 전 세계 컴퓨터가 연결된 네트워크 환경에서는 호스트 파일에 의한 주소와 이름의 변환 작업이 사실상 불가능하다.

이러한 문제점을 해결하기 위하여 고안된 DNS는 주소와 이름 정보를 자동으로 유지하고 관리하는 분산 데이터베이스 시스템이다. 호스트 주소와 이름 정보는 네임 서버라는 틍정한 관리 호스트가 유지하고, 주소 변환 작업이 필요한 클라이언트는 네임 서버에 요청해서 IP 주소를 얻는다.

DNS는 여러 네임 서버에 분산하여 관리하도록 설계되었다.

2.3 기타 주소

네트워크에서 사용하는 주소는 OSI 7계층 모델의 각 계층에서도 목적에 따라 여러 형태의 주소가 사용된다.

  • MAC 주소: 계층 2의 MAC 계층에서 사용하며, 일반적으로 LAN 카드에 내장되어 있다. 물리 계층을 통해 데이터를 전송할 때는 MAC 주소를 이용해서 호스트를 구분한다. 따라서 네트워크 계층에서 데이터 링크 계층으로 데이터를 전송할 때는 먼저 IP 주소를 MAC 주소로 변환해야 한다.
  • IP 주소: 네트워크 계층의 기능을 수행하는 IP프로토콜에서 사용되며, IP 패킷이 지나가는 경로를 결정하는 라우팅의 기준이 된다.
  • 포트 주소: 전송 계층에서 사용하며, 호스트에서 실행되는 프로세스를 구분해준다. TCP와 UDP가 독립적으로 포트 주소를 관리하며, 포트 번호 또는 소켓 주소라고도 한다.
  • 메일 주소: 응용 계층의 메일 시스템에서 사용자를 구분하려고 사용한다.

참고자료

쉽게 배우는 데이터 통신과 컴퓨터 네트워크 개정판 (박기현 저)

Leave a comment