-
[Network] 네트워크 기초 개념Network/Network 2023. 2. 17. 00:35
네트워크란?
IEEE(Institute of Electrical and Electronics Engineers : 국제 전기 전자 공학회)에서는 네트워크를
몇 개의 독립적인 장치가 적절한 영역내에 적당히 빠른 속도의 물리적 통신 채널을 통하여 서로가 직접 통신할 수 있도록 지원해주는 데이터 통신 체계
라고 정의했습니다.
즉, 네트워크란 컴퓨터들이 통신 기술을 이용하여 서로 정보를 주고받을 수 있도록 그물망형태로 연결된 시스템들의 모음으로 시스템들의 연결을 통해 컴퓨터의 자원을 공유할 수 있도록 하는 통신 형태입니다.
네트워크를 통해 컴퓨터끼리 파일, 사진, 동영상, 음악 등 매체를 재생 또는 전송 할 수 있으며, 한 대의 기기를 (ex. 프린터) 여러대의 컴퓨터에서 사용할 수도 있고, 광대역 인터넷 연결을 공유할 수 있어 간편하게 인터넷을 사용할 수 있도록 해줍니다.
하지만 네트워크를 통해 컴퓨터에 악성코드를 심거나 데이터를 변조, 누락, 가로챌 수 있으며, 해킹이 가능하다는 단점도 있습니다.
네트워크 기초 용어
1. 시스템
시스템이란 대상이 내부 규칙에 따라 능동적으로 동작하는 대상을 말합니다.
컴퓨터, 하드디스크와 같은 물리적인 대상 뿐만 아니라 운영체제, 프로세스 같은 논리적인 대상들도 시스템으로 칭합니다.
시스템 동작에 필요한 외부 입력이 있을 수 있으며, 내부 정보와 외부 입력의 조합에 따른 출력이 있을 수 있습니다.
작은 시스템이여러 개 모여 더 큰 시스템을 구성할 수 있습니다.
1) 시스템의 구분
- 노드 : 인터넷에 연결된 시스템을 가장 일반화한 용어로, 데이터를 주고받을 수 있는 모든 시스템을 통칭하여 사용합니다.
- 호스트 : 일반적으로 컴퓨팅 기능이 있는 시스템을 의미합니다. 즉, 인터넷을 통해 다른 컴퓨터들과 쌍방향 통신이 가능한 컴퓨터를 말합니다.
* 호스트 번호 : 네트워크 번호 + IP주소
- 클라이언트 : 호스트를 세분할 때는 호스트 사이에 제공되는 서비스를 기준으로 클라이언트와 서버로 나눌 수 있는데, 클라이언트는 서비스를 이용하는 시스템입니다.
- 서버 : 서비스를 주고받는 호스트들의 관계에서 임의의 서비스를 제공하는 시스템입니다. 일반적으로 서버는 클라이언트보다 먼저 실행상태가 되어 클라이언트의 요청에 대기해야합니다. 그리고 영원히 종료하지 않으면서 클라이언트의 요청이 있을 때마다 서비스를 반복해서 제공해야합니다.
2. 인터페이스
인터페이스란 시스템과 시스템을 연결하기 위한 표준화된 접근 방법입니다.
인터페이스는 상호 간에 데이터 교환을 위한 논리적인 규격 뿐만 아니라, 물리적인 규격도 표준화되어야하며, 인터페이스를 이용해 연결하는 시스템은 능력과 능력과 권한이 같은 경우도 있지만 서로 서비스를 주고 받는 상하 관계일 수도 있습니다.
* 서비스 : 하위계층에서 상위계층에 정보를 제공하는 것이다.
3. 전송 매체
시스템기리 정해진 인터페이스를 연동해 데이터를 전달하려면 물리적은 전송 수단인 전송매체가 반드시 있어야 한다.
인터페이스는 시스템간의 연동을 위한 논리적인 규격이고, 인터페이스에서 정해진 규칙은 매체를 통해 전송됨으로써 구현되고 동작될 수 있다. 즉, 시스템과 시스템을 연결하기 위해서는 전송매체가 필요합니다.
4. 프로토콜
상호 연동되는 시스템이 전송 매체를 통해 데이터를 교환할 때는 표준화된 특정 규칙을 따르는데, 이 규칙을 프로토콜이라고 합니다.
일반적으로 프로토콜은 주종관계가 아닌 동등한 위치에 있는 시스템 사이의 규칙이라는 측면이 강조되어 인터페이스와 구분된다.
인터페이스는 두 시스템이 연동하기 위한 특정한 접촉 지점을 의미하지만, 프로토콜은 주고받는 정보의 형식과 그 과정에서 발생하는 일련의 절차적 순서에 무게를 둡니다.
5. 네트워크
통신용 매체를 공유하는 여러 시스템이 프로토콜을 사용하여 데이터를 주고받을 때, 이들을 하나의 단위로 통칭하여 네트워크라고 부릅니다.
일반적인 컴퓨터 네트워크에서는 물리적인 통신 매체로 연결된 컴퓨터들이 동일한 프로토콜을 이용해 서로 데이터를 주고 받습니다.
6. 인터넷
인터넷은 전 세계의 모든 네트워크가 유기적으로 연결되어 동작하는 통합 네트워크입니다.
인터넷으로 연결된 시스템, 인터페이스, 전송 매체, 프로토콜들은 그 종류가 매우 복잡하고 다양하지만, 데이터 전달 기능에 한해서는 공통으로 IP프로토콜을 사용합니다.
7. 표준화
표준화란 서로 다른 시스템이 상호 연동해 동작하기 위한 연동 형식 통일입니다. 규격을 통일하여야 서로 다른 시스템들이 네트워크 시스템을 사용할 수 있습니다.
네트워크 주소의 표현
시스템을 설계할 때는 기능이나 목적과 함께 고유의 구분자를 부여해야합니다. 컴퓨터에서 구분자는 숫자로 된 주소로 표현할 수 밖에 없기 때문에 보통 외우기 쉬운 기호 형식의 이름을 추가로 사용합니다. 주소와 이름은 일대일 관계가 이루어지며 구분자는 다음 네 가지 특징을 가집니다.
- 유일성 : 서로 다른 시스템이 같은 구분자를 갖지 않는 유일성을 보장해야 합니다.
- 확장성 : 시스템은 시간이 흐르면서 이용자가 증가하기 때문에 최대 수용 규모를 예측하여 구분자의 최대 한계를 올바르게 설정해야합니다.
- 편리성 : 구분자는 시스템의 내부 처리 구조를 효율적으로 운용할 수 있도록 숫자 기반입니다. 하지만 일반 사용자는 이 구분자를 쉽게 이해하기 어려우므로 기호로 된 이름을 추가로 부여하여 매핑합니다.
* 매핑 : 숫자로 된 주소와 문자로 된 이름을 1:1관계가 되도록 하는 것
- 정보의 함축 : 구분자는 응용 환경에 필요한 다양한 정보를 포함하기 때문에 응용환경에 적절히 대응할 수 있는 정보를 포함해야합니다.
네트워크 주소와 이름
일반 사용자가 내부 주소를 몰라도 이름만으로 시스템에 접근할 수 있도록 시스템을 지칭하는 구분자는 내부에서 처리되는 숫자 기반의 주소와 함께 사용자의 이해와 편리성을 도모하는 기호로 된 이름을 제공해야 합니다.
각 계층의 기능을 담당하는 프로토콜마다 주소를 독립적으로 관리하기 때문에 네트워크에는 여러 종류의 주소와 이름이 존재합니다.
IP주소
네트워크 주소는 네트워크 계층의 기능을 수행하는 IP프로토콜이 호스트를 구분하기 위하여 사용하는 주소체계입니다.
IP주소는 32비트의 이진 숫자를 8비트씩 네 부분으로 나누어 십진수로 표현하고, 십진수로 변환한 후 각각을 점(.)으로 구분하여 표기합니다.
IP주소는 유일성을 보장하기 위해서 국제 표준화 기구가 전체 주소를 관리하고 할당하기 때문에 중복 주소의 사용을 원천적으로 차단합니다. IP주소는 임의로 할당되는 것이 아니라, 특정 규칙에 따라 인접한 숫자를 그룹으로 묶어 관리합니다. 따라서 IP주소는 경로를 선택할 때 중요한 기준이 됩니다.
호스트 이름
인터넷에서 특정 호스트와 연결하려면 반드시 해당 호스트의 IP 주소를 알아야 합니다. 하지만 숫자로 된 IP 주소는 기억하기 힘들기 때문에 의미 파악이 쉬운 문자로 된 호스트 이름을 사용합니다.
네트워크 계층의 IP 프로토콜은 호스트를 구분하는 용도로 IP 주소만 사용하기 때문에 호스트 이름을 IP주소로 변환해야 합니다. 이때 DNS(Domain Name System)라는 주소 변환 기능을 이용해서 IP 주소를 얻을 수 있습니다.
DNS 시스템은 호스트 이름을 <호스트>.<단체 이름>.<단체 종류>.<국가 도메인>로 표기합니다.
예를 들어, zebra.korea.co.kr과 같은 호스트의 이름은 대한민국(kr)에 있는 일반 회사(co)중에서 korea라는 이름의 회사가 소속된 zebra라는 호스트를 의미하게 됩니다.
주소 정보의 관리
주소 정보를 관리하는 방법에는 호스트 파일 방법과 DNS 방법 2가지가 있습니다.
호스트 파일
호스트 이름과 IP 주소의 조합을 특정 파일에 기록, 관리하는 것으로, 사용자가 입력한 호스트 이름을 이 파일에서 검색하여 일대일로 대응된 IP 주소 정보를 쉽게 얻을 수 있습니다.
네트워크 관리자는 관리 대상이 되는 모든 컴퓨터의 호스트 정보를 주기적으로 갱신하고, 이 정보를 네트워크에 있는 모든 컴퓨터가 복사함으로써 정보의 일관성을 유지합니다. 호스프 파일을 갱신하고 복사하는 작업은 보통 시스템 관리자가 수작업으로 하기 때문에 많은 시간과 노력이 든다는 단점이 있습니다.
DNS
호스트 파일의 문제점을 해결하기 위하여 고안된 시스템으로써, 주소와 이름 정보를 자동으로 유지하고 관리하는 분산 데이터베이스 시스템입니다. 호스트 주소와 이름 정보는 네임 서버(Name Server)라는 특정한 관리 호스트가 유지하고, 주소 변환 작업이 필요한 클라이언트는 네임 서버에 요청해서 IP 주소를 얻을 수 있습니다.
DNS는 하나의 집중화된 네임 서버가 전체 호스트의 정보를 관리하지 않고, 여러 네임 서버에 분산하여 관리 하도록 설계 되어있습니다. 계층 구조로 연결된 네임 서버는 자신이 관리하는 영역에 위치한 호스트 정보만 관리하며, 정보를 상호 교환하는 협력 관계를 통해서 전체 호스트 정보를 일관성 있게 유지합니다.
기타 주소
- MAC 주소 : 계층 2의 MAC(Medium Access Protocol)계층에서 사용하며, 일반적으로 LAN 카드에 내장되어 있습니다. 물리 계층을 통해 데이터를 전송할 때는 MAC 주소를 이용해서 호스트를 구분하기 때문에 네트워크 계층에서 데이터 링크 계층으로 데이터를 전송할 때는 먼저 IP 주소를 MAC 주소로 변환해야 합니다.
- IP 주소 : 네트워크 계층의 기능을 수행하는 IP 프로토콜에서 사용되며, IP 패킷이 지나가는 경로를 결정하는 라우팅의 기준이 됩니다.
- 포트 주소 : 전송 계층에서 사용하며, 호스트에서 실행되는 프로세스를 구분해줍니다. TCP와 UDP가 독립적으로 포트 주소를 관리하며, 포트 번호 또는 소켓 주소라는 용어를 사용하기도 합니다.
- 메일 주소 : 응용 계층의 메일 시스템에서 사용자를 구분하기 위해 사용합니다. 사용자 이름과 호스트 이름을 @문자로 구분해 표기합니다. ex)hong@korea.co.kr
'Network > Network' 카테고리의 다른 글
[Network] OSI 참조 모델과 TCP/IP모델 (0) 2023.02.10 [Network] 계층구조의 개념 (0) 2023.02.09