정보처리기능사 실기 Part 3 - Chapter 2. 네트워크

HongInSung·2022년 7월 30일
0
post-thumbnail

이 글은 이기적 정보처리기능사 실기 기본서를 기반으로 제작되었습니다.

소개

오늘은 정보처리기능사에 꽃이자, 프론트엔드 개발자라면 반드시 알아야 할 중요한 부분!
네트워크에 대해 배워보도록 합시다!

1. 네트워크 기초 활용

1. 네트워크 계층 구조

1) 네트워크

  • 원하는 정보를 원하는 수신자 또는 기기에 정확하게 전송하기 위한 기반 인프라를 말한다.
  • 네트워크를 사용하여 정보를 전달할 때 약속한 규칙에 따라야 하는데, 이를 프로토콜이라고 한다.

2) 거리에 따른 네트워크 분류

종류거리특징
LAN근거리한 건물 또는 작은 지역을 커버하는 네트워크
WAN광대역국가, 대륙과 같이 광범위한 지역을 연결하는 네트워크
LAN에 비해 전송 거리가 넓고, 라우팅 알고리즘이 필요하다.
거리에 제약이 없으나, 다양한 경로를 지나 정보를 전달하므로 LAN보다 속도가 느림, 에러율도 높음.

3) 패킷 교환 VS 회선 교환 ( 데이터 교환 방식 )

1) 회선 교환

  • 물리적 전용선을 활용하여 데이터 전달 경로가 정해진 후, 동일 경로로만 전달된다.
  • 데이터를 동시에 전솔할 수 있는 양을 의미하는 대역폭이 고정되어 있다.
  • 안정적인 전송률을 확보할 수 있다.

2) 패킷 교환

  • 패킷이라는 단위를 사용하여 데이터를 송신하고 수신한다.
  • 현재 컴퓨터 네트워크에서 주로 사용하는 방식이다.
  • 정보를 일정한 크기로 분할한 뒤 각각의 패킷에 송수신 주소 및 부가 정보를 입력한다.

2. OSI(Open System Interconnection) 7계층

  • 국제 표준화 기구인 ISO에서 개발한 네트워크 계층 표현 모델이다.
  • 각 계층은 서로 독립적으로 구성되고, 하위 계층의 기능을 이용하여 상위 계층에 기능을 제공한다.
  • 1계층인 물리 계층부터 7계층인 애플리케이션 계층으로 정의되어 있다.

    (물데네전세표응으로 외워가면 좋다.)

3. 네트워크 주요 장비

1) 허브

  • 여러 대의 컴퓨터를 연결하여 네트워크로 보내거나 하나의 네트워크로 수신된 정보를 여러 대의 컴퓨터로 송신하기 위한 장비이다.
  • 쉽게 생각하자면, 맥북에서 많이 쓰이는 C타입 USB 허브 생각하면 된다.
  • 수신한 프레임을 수신 포트를 제외한 모든 포트로 전송한다.
  • 허브의 종류로는 대표적으로 더미 허브스위치 허브가 있다.
    • 더미 허브
      • 데이터를 단순히 연결한 성형 구조로 구성되어 있는 허브
    • 스위치 허브
      • 스위치 기능을 가진 허브
      • 데이터의 유무 및 흐름을 제어하는 지능형 허브이다.
      • 요즘 사용되는 대부분의 허브이다.

2) 리피터

  • 감쇠된 전송 신호를 새롭게 재생하여 다시 전달하는 재생 중계 장치이다.
  • 비슷한 장치로는, WI-FI 중계기 생각하면 된다.
  • 허브 등으로 연결하여 통신할 경우, 감쇠된 디지털 신호를 증폭시켜 주는 역할을 한다.
  • 신호가 약해지지 않고 컴퓨터로 수신되도록 한다.

3) 브리지, 스위치

  • 브리지와 스위치는 두 시스템을 연결하는 네트워킹 장치이다.
  • 두 개의 LAN을 연결하여 훨씬 더 큰 LAN을 만들어준다.
브리지스위치
소프트웨어 방식하드웨어 방식
저속고속
포트들이 동일한 속도로 전송포트들마다 다른 속도로 전송
2~3개 포트수백 개 이상 포트
목적지 주소를 기준으로 1:1 연결목적지 주소 기준으로 1:N 연결
데이터를 전부 받은 후 처리하는
Store and Forwarding 방식만을 사용
목적지 수고만 활인 후 바로 전송하는 방식인 Cut Through와
브리지의 Store and Forwarding 방식의 장점을 결합한
Fragment Free방식을 같이 사용

4) 라우터

  • 라우터는 네트워크 계층에서 서로 다른 구조의 망을 연결하는 연동 장치이다.
  • PC 등의 로컬 호스트가 LAN에 접근할 수 있도록 하며, WAN 인터페이스를 사용하여 WAN에 접근하도록 한다.
  • 라우팅 프로토콜은 경로를 설정하여 원하는 목적지까지 지정된 데이터가 안전하게 전달되도록 한다.

5) 게이트웨이

  • 프로토콜을 서로 다른 통신망에 접속할 수 있게 해주거나 다른 종류의 네트워크 등을 상호 접속하여 정보를 주고받을 수 있는 장치이다.

6) NIC(Network Interface Card)

  • 외부 네트워크와 접속하여 가장 빠른 속도로 데이터를 주고받을 수 있게 컴퓨터 내에 설치되는 장치이다.

2. 네트워크 프로토콜 파악

1. 네트워크 프로토콜

1) 네트워크 프로토콜의 개념

  • 네트워크 프로토콜이란? 컴퓨터나 원거리 통신 장비 사이에서 메시지를 주고받는 양식규칙의 체계이다.
  • 통신 규약 또는 규칙에는 아래와 같은 방식이 있다.
    • 전달 방식, 통신 방식, 자료의 형식, 오류 검증 방식, 코드 변환 규칙, 전송 속도 등
  • 다른 기종 장비는 각기 다른 통신 규약을 사용하는데, 프로토콜을 사용하면 다른 기기 간 정보 전달을 표준화 할 수 있다.

    프로토콜의 기본 요소는 구문(Syntax), 의미(Semantics), 시간(Timing) 이 3가지다.

1) 네트워크 프로토콜의 종류

  • HTTP
    • 웹상에서 데이터를 주고 받을 수 있는 프로토콜
  • FTP
    • 네트워크를 통해 컴퓨터들 간의 파일을 교환하기 위한 프로토콜
    • Anonymous FTP는 익명성을 보장함.
    • 대표적인 예로는 파일질라(FileZila)가 있음.
  • Telnet
    • 원격 통신에 이용되는 프로토콜의 하나
    • 데이터의 전송 시에 암호화 작업이 존재하지 않아 보안성이 낮은 프로토콜
    • 포트 번호 : 23
  • SSH
    • Telnet과 마찬가지로 원격 통신에 이용되는 프로토콜의 하나
    • 데이터의 전송 시에 암호화 작업이 존재하여 보안성이 높은 프로토콜
    • 포트 번호 : 22
  • rlogin
    • UNIX와 같은 시스템의 같은 네트워크 상에서 사용되는 원격 통신 프로토콜
    • 포트 번호 : 513
  • SOAP
    • HTTP, HTTPS 등을 통해 XML 기반의 데이터를 컴퓨터 네트워크 상에서 교환하는 프로토콜
  • TCP
    • 데이터 전송 프로토콜이다.
    • 데이터를 주고받는 과정에서 데이터를 검수하는 작업을 통해 서로 확인하는 과정을 거침.
    • 정상적으로 데이터 누락 등을 확인할 수 있는 신뢰성 있는 프로토콜이다.
  • UDP
    • TCP와 마찬가지로 데이터 전송 프로토콜
    • 데이터를 주고받는 과정에서 데이터를 검수하지 않는다.
    • 신뢰성이 떨어지는 프로토콜이다.
    • 확인하는 과정을 거치지 않기 때문에 TCP보다 데이터 전송이 빠르다.
  • DHCP
    • 각종 TCP/IP 프로토콜 및 IP 주소 등을 자동적으로 클라이언트가 제공 및 사용할 수 있도록 해주는 프로토콜( 유동 IP 설정 )
  • ARP, RARP
    • Address Resolution Protocol, Reverse ARP 의 약자이다.
    • ARP는 IPMAC으로 변환해주고, RARP는 반대로 MACIP로 변환해준다.
    • IP는 논리적 주소를 의미하고, MAC은 물리적 주소를 의미한다.
  • SMTP
    • 전자우편 송신 프로토콜
  • POP3
    • 전자우편 수신 프로토콜

2) 네트워크 프로토콜의 특징

  • 단편화
    • 전송이 가능한 작은 블록으로 나누어지는 것
  • 재조립
    • 단편화 된 조각들을 원래 데이터로 복원하는 것
  • 캡슐화
    • 상위 계층의 데이터에 각종 정보를 추가하여 하위 계층으로 보내는 것
  • 연결 제어
    • 데이터의 전송량이나 속도를 제어하는 것
  • 오류 제어
    • 전송 중 잃어버리는 데이터오류가 발생한 데이터를 검증하는 것
  • 동기화
    • 송신과 수신측의 시점을 맞추는 것
  • 다중화
    • 하나의 통신 회선에 여러 기기뜰이 접속할 수 있는 것
  • 주소 지정
    • 송신과 수신지의 주소를 부여하여 정확한 데이터 전송을 보장하는 것

2) IP(Internet Protocol) 주소

  • 전세계 컴퓨터에 부여되는 유일한 식별자다.
  • IP는 각 나라의 공인 기관에서 할당하고 관리한다.
    • 우리나라 같은 경우 한국인터넷진흥원(KR-NIC)에서 관리한다.
  • IPv4는 인터넷 초기부터 현재까지 쓰고 있는 주소 체계이며 000.000.000.000과 같이 12자리로 표시한다.
  • 43억개를 부여할 수 있으며, 최근에는 디바이스의 증가로 IPv4가 가진 주소의 양이 부족할 수 있어 IPv6를 공표하였다.
  • 2018년부터 현재까지는 IPv4와 IPv6가 공존하면서 두 개의 주소 체계를 변환하여 사용하고 있다.
    • 이를 담당하는 것을 NAT(Network Address Translator)이라고 한다.
  • IPv6는 이전 버전에 비하여 효율적인 패킷을 처리하고 보안이 강화되었다는 특징이 있다.

1) IPv4 VS IPv6

구분IPv4IPv6
주소 길이32bit128bit
표시 방법8비트씩 4부분(10진수)
000.000.000.000
ex) 192.168.0.1
16비트씩 8부분(16진수)
0000:0000:0000:0000
ex)fe40:b76f:f14e:23af(실제로는 없는 주소입니다.)
주소 개수약 43억개약 43⁴억개
주소 할당A,B,C 등 클래스 단위의 비순차적 할당네트워크 규모 및 단말기 수에 따른 순차적 할당
품질 제어지원 수단 없음등급별, 서비스별로 패킷 구분
보안 기능IPsec 프로토콜 별도 설치확장 기능에서 기본으로 제공
헤더 크기가변고정
pnp지원 수단 없음지원
웹 캐스팅곤란용이
전송 방식멀티캐스트, 브로트캐스트, 유니캐스트멀티캐스트, 애니캐스트, 유니캐스트

2) 네트워크 클래스

  • 네트워크 단말의 증가로 사용 가능한 IPv4의 주소가 부족해졌었다.
  • 이에 사용 목적에 따라 IP 대역대를 나누어 각 규모에 따라 관리하기 쉽게 표현한 것이다.
클래스IP 주소의 첫 번쨰 옥탯사용목적IP 주소 첫 번째 바이트 범위
A0xxx xxxx대형 기관(대륙 간)0~127
B10xx xxxx중형 기관(국가 간)128~191
C110x xxxx소형 기관(기업 간)192~223
D1110 xxxx그룹 통신, 멀티캐스트용224~239
E1111 xxxx연구, 실험용240~254

2. TCP/IP 프로토콜

1) TCP/IP 프로토콜 개념

  • TCP/IP란? TCP와 IP 프로토콜만을 지칭하는 것이 아니라, UDP, ICMP, ARP, RARP등 관련된 프로토콜을 통칭하는 프로토콜이다.

    ICMP - Internet Control Message Protocol

  • TCP와 UDP로 구분되는 프로토콜은 전송 계층에서 응용 계층과 인터넷 계층 사이의 통신을 담당한다.

2) TCP와 UDP의 차이점

  • TCP와 UDP의 가장 큰 차이점은 데이터 전송의 신뢰성에 있다.
  • 위에서 말했듯이, TCP는 수신측의 수신 가능 상태, 수신 여부 등을 단계별로 체크해 가며 데이터를 전송한다.
  • 하지만 UDP는 망으로 데이터를 송신할 뿐 확인 작업을 수행하지는 않는다.

    후방주의 버전

1) TCP(Transmission Control Protocol)

  • CRC 체크재전송 기능을 통해 신뢰성 있는 전송을 확보한다.
  • Flow Control 기능을 수행하여 단계별 데이터 전송 상황을 체크한다.
  • 논리적인 1:1 가상 회선을 지원하여 해당 경로로만 데이터가 전달되도록 한다.
  • 대표 서비스 : FTP,Telnet,HTTP,SMTP,POP,IMAP 등

2) UDP(User Datagram Protocol)

  • 연결되어 있어도 데이터를 송신할 수 있다. 단, 수신측의 수신 여부는 확인하기 어렵다.
  • Flow Control, Error Control을 하지 않아 신뢰성 있는 데이터 전송에는 부적합하다.
  • 하나의 송신 정보를 다수의 인원이 수신해야 할 경우에 사용한다.
  • 대표서비스 : SNFP, DNS, TFTP, NFS, NETBIOS, 인터넷 게임(롤 등)/방송(트위치 등)/증권 등

3. 네트워크 핵심 알고리즘

1. 패킷 스위칭(패킷 교환)

  • 패킷 교환(Packet switching)이란?
    • 컴퓨터 네트워크 통신 방식 중 하나
    • 작은 블록의 패킷이 데이터를 전송한다.
    • 데이터를 전송하는 동안만 네트워크 자원을 사용하도록 하는 방법을 의미한다.
    • 현재 가장 많은 사람들이 사용하는 통신 방식이다.
  • 정보 전달의 단위인 패킷은 여러 통신 지점(Node)을 연결하는 데이터 연결 상의 모든 노드들 사이에 개별적으로 경로가 제어된다.
  • 이 방식은 통신 기간동안 독점적인 사용을 위해 두 통신 노드 사이를 연결하는 회선 교환 방식과는 달리 짤막한 데이터 트래픽에 적합하다.

1) X.25

  • X.25란?
    • 패킷이라고 불리는 데이터 블록을 사용하여 대용량의 데이터를 다수의 패킷으로 분리하여 송신하는 방식이다.
    • 수신 측에서는 다수의 패킷을 결합하여 원래의 데이터로 복원한다.
    • 전기 통신 국제기구인 ITU-T에서 관리, 감독하는 프로토콜이다.
    • OSI 7계층의 레이어 중 1~3계층까지를 담당한다.
  • X.25는 데이터 송수신의 신회성을 확보하기 위해 양자 간 통신 연결을 확립해 나가는 프로세스를 거친다.
  • 초기에 에러 제어흐름 제어를 위한 복잡한 기능을 가지고 있어 자체로 성능상의 오버헤드가 발생되었기 때문에, 현재는 프레임 릴레이나, ISDN, ATM등 고속망으로 대체되었다.

2) 프레임 릴레이

  • 프레임 릴레이는 ISDN을 사용하기 위한 프로토콜이다.
  • 위에서 소개한 ITU-T에 의해 표준으로 작성되었고, 다음과 같은 특징이 있다.
    • X.25가 고정된 대역폭을 갖는 반면, 프레임 릴레이는 사용자의 요청에 따라 유연한 대역폭을 할당한다.
    • 망의 성능 향상을 위해 에러 제어 기능과 흐름 제어 기능을 단순화 시켰다.
    • X.25가 OSI 7계층 중 1~3계층까지를 담당하는 반면, 프레임 릴레이는 1~2계층만을 담당한다.
    • 전용 선을 사용하는 것보다 가격이 저렴하며, 기술적으로는 X.25에 비해 우위에 있다.

3) ATM(Asynchronous Transfer Mode)

  • 은행 ATM 아니다.
  • ATM은 비동기 전송 모드라고 하는 광대역 전송에 쓰이는 스위칭 기법이다
  • 동기화를 맞추지 않아 보낼 데이터가 없는 사용자의 슬롯을 다른 사람이 사용할 수 있도록 했다.
  • 네트워크 상의 효율성이 좋다.
  • ATM망은 연결형 회선이기 때문에 하나의 패킷을 보내 연결을 설정하게 되고 이후 실데이터 전송이 이루어진다.
  • ATM은 OSI 7계층과는 다른 고유한 참조 모델을 가지고 있다.
  • 물리(Physical layer) 계층
    • 물리적 전송 매체를 다룬다.
  • ATM 계층
    • 전송을 담당한다.
    • 셀의 레이아웃을 정의하고, 헤더 필드가 의마하는 것을 알려 준다.
    • 가상 회선의 연결 및 해제, 혼잡 제어를 다룬다.
  • AAL 계층
    • ATM Adaptation Layer
    • 패킷을 작은 조각인 로 전송한 후 다시 조립하여 원래의 데이터로 복원하는 역할을 한다.

2. 서킷 스위칭(회선 교환)

  • 회선 교환(circuit switching)이란?
    • 패킷 스위칭과는 달리 네트워크 리소스를 특정 사용층이 독점하도록 하는 것을 의미한다.
    • 네트워크를 독점적으로 사용하기 때문에 전송이 보장(Guaranteed)된다는 특징이 있다.
    • 서킷을 확보하기 위한 작업 -> 실데이터 전송 -> 서킷 종료 프로세스로 진행된다.
    • 이러한 작업이 일어나는 동안 다른 기기들은 해당 경로를 사용할 수 없다.

3. 라우팅 알고리즘

  • 데이터는 송신측으로부터 수신측까지 데이터를 전달하는 과정에서 다양한 물리 장치들을 거쳐 간다.
  • 목적지까지의 최적 경로를 산출하기 위한 법칙이 라우팅 알고리즘이다.

1) 거리 벡터 알고리즘(Distance Vector Algorithm)

  • 라우터라우터 간의 최단 경로 스패닝 트리를 찾고, 그 최적 경로를 이용할 수 없을 경우에 다른 경로를 찾는다.
  • 각 라우터가 업데이트 될 때마다 전체 라우팅 테이블을 보내라고 요청한다.
  • 단, 수신된 경로 비용 정보는 이웃 라우터에게만 보내진다.
  • 다음에 소개할 링크 상태 라우팅 알고리즘보다 계산 면에서 단순하다.
  • 라우터와 라우터 간의 모든 경로를 파악한 뒤 대체 경로를 사전에 마련해 두는 방식이다.
  • 링크 상태 알고리즘을 사용하면 네트워크를 일관성 있게 파악할 수 있다.
  • 거리 벡터 알고리즘에 비해 계산이 더 복잡하고 트래픽을 광범위한 범위까지 전달해야 한다.

3) 라우팅 프로토콜의 종류

마치며

네! 드디어 네트워크 챕터가 끝이 났네요..ㄷㄷ
네트워크 핵심 알고리즘같은 경우는 문제에 거의 출제되지 않기 때문에 가볍게 흩어 가시면 되겠습니다!
그 외의 모든 부분들은 전부 파악하셔야 합니다.
다음 시간엔 데이터베이스를 배워보도록 하죠!
그럼 다음 시간에 다시 뵙도록 하죠!

profile
안녕하세요! 풀스택 노려보고 있는 홍인성입니다!

0개의 댓글