네트워크의 사전적 의미
- 모뎀이나 LAN, 케이블, 무선매체 등 통신설비를 갖춘 컴퓨터로 서로 연결
하는 조직이나 체계, 통신망- 즉, 통신설비들로 두 대 이상의 컴퓨터를 서로 연결한 것을 의미,
컴퓨터 두 대를 연결했든, 그 이상으로 연결했든 필요에 따라 여러 대를 서
로 연결한 것
클라이언트와 서버
:이용하는 서비스의 종류에 따라서 임의의 호스트가 클라이언트/서버의 역할이 바뀐다
: 특징이 다른 여러 호스트를 연결하기 위해서는 연결 방식을 표준화해야 한다.
대표적으로는 ISO의 OSI(Open System Interconnection) 7계층 모델
아래 그림은 계층 구조
FTP의 계층 구조
바이트 오더링(byte ordering) : 컴퓨터에 저장되는 최소 단위인 바이트를 읽어오는 순서
ex) 0x1234를 저장하면?
CPU에 의해 엔디안 방식이 다르다.
: 클라이언트와 서버가 서로 다른 엔디안 방식이라면 문제가 생긴다.
따라서 데이터를 전송할 때 네트워크 바이트 오더를 따른다.
: 통상적으로 빅 엔디안을 사용하기로 했다.
: 내 컴퓨터가 리틀 엔디안이라면, 빅 엔디안 방식의 바이트 오더로 변환하여 전송
인터네트워킹 :네트워크와 네트워크의 연결
: 인터넷은 IP프로토콜을 사용하는 전 세계의 모든 네트워크가 연결된 시스템
: 네트워크 간의 연결을 위해서는 라우터(Router)를 사용한다.
게이트웨이(Gateway)
: 인터네트워킹 기능을 수행하는 시스템
: 리피터(Repeater), 브릿지(Bridge), 라우터(Router) 등을 사용
리피터
: 신호 감쇄를 보완하기 위한 신호 증폭 기능
브릿지
: 리피터에서 데이터 링크 계층의 기능이 추가된 것
라우터
: 물리/데이터링크/네트워크 계층의 기능을 지원
: 경로 선택 기능을 제공하기 위해 라우팅 테이블(Routing Table)을 생성 및 관리
프로토콜
: 통신 시스템이 데이터를 교환하기 위해 사용하는 통신 규칙
: 각 계층에서 사용되는 프로토콜은 서로 독립적임
아래 그림은 전화를 예시로 든 것
데이터 단위 : 네트워크 프로토콜을 통한 데이터 교환을 위해서는 데이터를 특정 형태로 규격화하는 작업이 필요
자세한 것은 나중에 정리
시스템을 설계할 때는 고유의 식별자를 부여해야 하며, 다음의 특징을 가지고 있다
유일성 : 대상 시스템을 서로 구분하여 지칭할 수 있어야 한다. 따라서 서로 다른 시스템이 같은 구분자를 갖지 않도록 해야한다.
확장성 : 시스템의 수용 규모를 올바르게 설정해야 한다.
편리성 : 사용자가 식별자를 쉽게 이해할 수 있도록 해야한다.
정보의 함축 : 다양한 정보를 포함해야 한다.
ex) 주민등록번호는 생년월일과 성별을 가진다
주소와 이름
: 시스템은 내부에서 처리되는 숫자 기반의 주소와 기호로 된 이름을 제공해야 한다.
IP주소
IP 주소는 네트워크 기능을 수행하는 IP프로토콜이 호스트를 구분하기 위해 사용되는 주소 체계. IPv4의 경우 32비트의 2진수로 구성된다.
유일성을 보장하기 위해서, IANA(Ineternet Assigned Names Authority)가 전체 주소를 관리하고 할당한다.
IP주소의 구분
호스트 이름 : 인터넷에서 호스트와 연결하려면 해당 호스트의 IP를 알고 있어야 한다.
: 따라서, 의미 파악이 쉬운 문자로 된 호스트 이름을 사용하고 있다.
DNS (Domain Name Service) : 사용자로부터 호스트의 이름을 입력받아서 IP주소를 반환해주는 역할을 담당
DNS에서의 호스트 이름
: 국가 도메인, 단체 종류, 단체 이름, 호스트의 계층 구조로 나누어 표기
예 ) http://sch.ac.kr , naver.com, google.com
주소 정보의 관리 : 호스트 이름과 IP주소의 조합을 텍스트 파일로 관리
DHCP (Dynamic Host Configuration Protocol) : 컴퓨터에게 자동으로 DNS주소, IP주소, 게이트웨이 주소를 일정 기간 할당해주는 것
hostname 명령어 : 내 컴퓨터의 이름을 확인할 수 있다.
ipconfig 명령어 : 컴퓨터의 네트워크 설정 정보를 확인할 수 ㅋ다.
ipconfig/all 명령어 : 컴퓨터의 보다 상세한 네트워크 설정 정보를 확인할 수 있다.
ipconfig/release 명령어 : 현재 IP주소를 해제한다.
ipconfig/renew 명령어 : DHCP를 사용하는 경우, 새로운 IP주소를 할당받는다.
ping 명령어 : 네트워크 상태를 점검할 때 사용
tracert 명령어 : 목적지에 도달할 때까지 통과하는 경로의 정보와 지연시간을 추적
nslookup 명령어 : DNS서버에 질의하여 호스트의 IP를 알아오는 명령어