본문 바로가기

개발

네트워크 간략 정리

1. Network
==== 개요 ====
  * 네트워크의 구성에 대한 정리.
 
==== 네트워크 정의  ====
  * 장비간의 통신이 가능하도록 서로 연결하는 것.

==== 네트워크 방식 ====
  1. 이더넷 - CSMA / CD 프로토콜 사용, 속도 : 10Mbps / 100Mbps.
      * CSMA / CD (Carrier Sense Multiple Access / Colision Detection)
        1) carrier(네트웍에 나타나는 신호)가 있는지 감지. -> Carrier Sense
        2) carrier가 존재하면 자기가 보낼 DATA는 잠시 대기.
        3) carrier가 존재하지 않으면 무조건 자기 DATA를 네트웍상에 보냄.
        4) carrier가 감지 안되어 동시에 몇몇 PC에서 자기 DATA를 보냄.
            -> Multiple Access (충돌(collision) 발생)
        5) DATA를 네트워크에 실어보내고 나서 다른 PC로 인해 충돌이 발생했는지 점검
           -> Colision Detection
        6) 충돌하게 되면 RANDOM한 시간(작은시간)동안 기다리고 다시 DATA 전송.
  2. 토큰링 - 토큰을 가진 PC만이 DATA전송 가능, 전송 후 옆 PC에 토큰 전달,
                  속도 : 4Mbps / 16Mbps
  3. FDDI
  4. ATM

==== 프로토콜 정의 ====
    * 장비간의 통신 규칙
    * ex)한국인(한국어) - 미국인(영어)
      - 한국어, 영어가 프로토콜이라고 보면 된다. 프로토콜이 다르면 장비간 통신이 되지 않는다.

==== 맥 어드레스 정의 ====
  * 네트워크상에 서로를 구분하기 위한 일종의 주소.
  * XX-XX-XX-XX-XX-XX 로 표시 되며 3번째까지가 제조사, 나머지가 일련번호 를 표현.
참고
TCP / IP통신은 IP주소를 사용하는 것처럼 보이나,실제로는 IP주소를 이용하여 MAC address를 바꾸어 통신을 한다. 이 절차를 ARP(Address Resolution Protocol)라 한다.

==== 통신방식의 구분 ====
  1. 유니캐스트
     - 특정 목적지 주소하나를 가지고 통신하는 방식.
  2. 브로드캐스트
     - 라우터에 의해 구분된 네트워크상에 붙어있는 모든 네트워크 장비들에게 보내는 통신 방식.
  3. 멀티캐스트
     - 1. 라우터나 스위치에 의해 지원되는 기능. 2. 특정 그룹에게 DATA를 보내는 통신 방식.

2. Network 장비

 1. Layer 1
     === LAN card ===
         * 네트워크 어답터 혹은 NIC (Network Interface Card)라고 함.
         * PC에서 통신을 담당하는 네트워크 장치.

 2. Layer 2
    === 허브 ===
        * 멀티포트, 리피터 기능을 함.
        * 연결된 PC들이 서로 통신할 수 있게 함.
        * 같은 허브에 연결되어 있는 모든 PC들을 같은 Collision Domain상에 있다라고 말한다.
          그래서 허브내에 연결되어 있는 PC들은 오직 두PC만 연결이 가능
          (이유 : CSMA/CD 프로토콜때문)
        * 허브 종류
            1) 인텔리전트 허브
                 - NMS(Network Management System)에 의해 관리 가능.
                 - Auto Partition기능 : 통신상에 문제가 있는 PC를 찾아 연결된 선로를 자동으로
                                                Isolation (고립)시킴.
            2) 더미 허브
                - NMS(Network Management System)에 의해 관리 불가.
            3) 스택커블 허브 : 여러대가 연결되면 더 좋은 성능을 발휘.
            4) 스탠드 얼론 허브 : 추후 확장을 고려하지 않은 허브.

 3. Layer 3
    === 브리지 ===
        * 스위치의 원조격.
        * 브리지 테이블을 이용하여 collision Domain을 나눈다.(소프트 웨어 적으로 나눔.)
        * 허브로 연결된 PC들은 오직 두 PC들만 연결 가능하나, 브리지가 Collision Domain을 반으로
          나누어 한 구역에 두 PC가 연결가능하고 다른 한 구역에도 두 PC가 연결 가능하도록 한다.
          한 구역의 한 PC와 다른 한 구역에 한 PC가 연결 할 때만 브리지를 통한 연결이 가능하도록
          한다.

    === 스위치 ===
        * 포트별로 Collision Domain이 나누어져 있다. (하드웨어적으로 나눔.)
        * 스위치에 연결된 PC들은 모두 서로서로 연결 가능. -> 허브와 가장 큰 차이점이다.
        * 포트 독자적으로 속도 갖음.
        * 데어티 전송 에러 복구 기능.
 
   === 브리지 & 스위치 공통점 ===
       * 브리지, 스위치는 Collision Domain을 나눌 수 있는 장비이다.
       * 브리지, 스위치를 데이터 링크 레이어 라고 함.
       * 하는 일
           1) Learning - 브리지 테이블에 MAC Address 기록.
           2) Flooding - DATA들어온 포트를 제외한 모든 나머지 포트로 DATA 뿌림.
           3) Forwarding - DATA전송 목적지(MAC Address)가 브리지 테이블에 있고 목적지가 출발지
                                  와 다른 세그먼트에 존재하는 경우 발생.
           4) Filtering - Collision Domain을 나누는 역할. DATA전송 목적지(MAC Address)가 브리지
                              테이블에 있고 목적지가 출발지와 같은 세그먼트에 존재하는 경우 발생.
           5) Aging - 브리지 테이블 관리를 위해 일정 시간동안 같은 목적지 Mac Address가 들어오지
                           않으면 브리지 테이블에서 Mac Address 삭제.
   
   === 브리지 & 스위치 차이점 ===
       * 스위치는 처리 방식이 하드웨어(ASIC)로 이루어져 속도가 빠르다.
       * 브리지는 처리 방식이 소프트 웨어로 이루어져 속도가 스위치에 비해 느리다.
       * 브리지는 포토들이 같은 속도 지원, 스위치는 포트마다 다른 속도 지원.
       * 스위치가 브리지 보다 많은 포트수 지원.
       * 브리지는 프레임 처리를 스토어-앤-포워드 방식으로만 처리하고 스위치는 컷 스루,
         스토어-앤-포워드 방식을 사용.
         1) 스토어-앤-포워드(Store-and-Forwarding)
             - 프레임을 전부 받아서 전송 처리, 에러 복구 능력 뛰어남.
         2) 컷 스루 (Cut-Through)
            - 프레임에서 목적지 주소(48비트)만을 보고 바로 전송 처리, 에러 복구 능력 떨어짐.
         3) 프래그먼트-프리 (Fragment-Free)
            - 프레임을 전부 받지 않고 512비트를 보고 전송 처리, 에러 감지 능력 컷-스루에 비해 우수.

 4. Layer 4
    === 라우터 ===
        * 브로드 캐스트 영역을 나누어주는 장비.
        * 브로드 캐스트 영역 : 라우터를 거치지 않고 DATA통신이 되는 영역.
        * IP, IPX, Appletalk등 프로토콜들의 라우팅(목적지 경로를 찾아주는 프로세스)-경로 배정.
        * 로드 분배 - 여러 경로를 가지고 있어서 한 쪽 경로에 문제가 생기면 다른 경로로 전송 가능.
        * 라우터는 IP주소를 2개 가짐.
            1) 이더넷 인터페이스
                - 내부 네트워크에 연결되는 인터페이스
                - 내부에서 사용하기 위해 부여 받은 IP주소 중 하나. (Default Gateway)
            2) 시리얼 인터페이스
               - 외부(ISP) 즉 인터넷 쪽으로 연결되는 인터페이스
               - ISP업체의 시리얼 인터페이스와 IP를 맞추어서 부여받음.
        * 스위치가 보장 못하는 보안 기능, 패킷 필터링 기능 지원.
        * 트래픽 전송 순서 조정 (QoS : Quality of Service) 

3. IP주소 관련
=== IP 주소 ===
  * IP주소는 이진수 32자리로 이루어 진다.
    (8자리씩 4파트 : IP4)ex)xxxx xxxx.xxxx xxxx.xxxx xxxx.xxxx xxxx
  * IP주소는 크게 2부분으로 나뉘어 진다.
        1) 네트워크 부분
           * 하나의 브로드캐스트 영역(Broadcast Domain)
              - 하나의 PC가 DATA를 뿌리면 라우터를 거치지 않고 바로 받을 수 있는 영역.
           * 라우터가 라우팅 할 때 참고하는 부분.
           * ex)회사에서 한 PC가 회사 내 다른 PC에게 DATA전송한다면 그 DATA는 라우터를 거치지
                  않고 전송 가능 -> 같은 네트워크 영역에 있기 때문.
           * ex)전화번호에서 지역 번호에 해당.
        2) 호스트 부분
           * 각각의 PC또는 장비.
           * ex)전화번호에서 지역 번호를 제외한 나머지 전화번호에 해당.
           * 하나의 브로드캐스트 영역에 있는 경우 네트워크 부분의 IP는 동일해야 하고 호스트 부분의
             IP는 모두 달라야 정상적인 통신 가능.
    * IP주소는 5개의 Class로 구분 되나, 3개의 Class만 알면 된다.
    - 네트워크 부분 : 진하고 밑줄 친 부분, 호스트 부분 : 나머지 부분.
    - Class A : 0xxx xxxx.xxxx xxxx.xxxx xxxx.xxxx xxxx
                   - 네트워크 번호가 1 ~ 126, 호스트 수 : 16,777,214
    - Class B : 10xx xxxx.xxxx xxxx.xxxx xxxx.xxxx xxxx
                   - 네트워크 번호가 128.1 ~ 191.254, 호스트 수 : 65,534
    - Class C : 110x xxxx.xxxx xxxx.xxxx xxxx.xxxx xxxx
                   - 네트워크 번호가 192.0.1 ~ 223.255.254, 호스트 수 : 254

=== 서브넷 마스크 ===
  * 서브 넷을 만들기 위해 씌우는 마스크 값.
  * ex)돼지 고기 5근을 전부 구워서만 먹기는 좀 그렇다. 그래서 찌게에도 넣고, 볶아도 먹고,
         할려면 돼지고기를 잘라야 한다. 이렇게 고기를 자를 때 칼을 쓰듯이 네트워크를 나눌 때에는
         서브넷 마스크를 써서 네트워크를 나눈다.
  * 서브 넷으로 나누는 이유
      - 브로드 캐스트 영역을 나누기 위해.
      - IP주소 절약 하기 위해.
  * 서브 넷간의 통신은 라우터를 통해서만 가능.
  * 모든 IP주소에는 서브넷 마스크가 따라다닌다.
     그 이유는 서브넷으로 나눠어져 있는지, 아닌지를 판단하기 위해서 이다.
  * 서브넷을 나누지 않았을 경우 Default Subnet Mask가 할당.(편리를 위해 10진수로 표현.)
       - Class A : 255.0.0.0
       - Class B : 255.255.0.0
       - Class C : 255.255.255.0
  * 서브넷을 나누었을 경우 Default Subnet Mask를 쓰지 않고 약간 수정하여 사용.
  * Subnet Mask의 역할
      - IP주소를 가지고 어디까지가 네트워크 부분이고, 어디까지가 호스트 부분인지를 나타내는 역할
  * Subnet Mask를 만드는 규칙은 '1'이 연속적으로 나온 후 '0'이 나오도록 생성한다.
      - Subnet Mask : 255.255.255.10
         - 결론  : 위의 값은 Subnet Mask가 될 수 없다.
         - 이유1 : 위의 값을 이진수 변환 하면 -> 1111 1111.1111 1111.1111 1111.0000 1010
         - 이유2 : 위의 이진수 값은 '1'이 연속적이지 않는다.
      - Subnet mask : 255.255.255.15
         - 결론  : 위의 값은 Subnet Mask가 될 수 없다.
         - 이유1 : 위의 값을 이진수 변환 하면 -> 1111 1111.1111 1111.1111 1111.0000 1111
         - 이유2 : 위의 이진수 값은 '1'이 연속적이지 않다.
      - Subnet mask : 255.255.255.252
         - 결론  : **위의 값은 Subnet Mask가 된다.**
         - 이유1 : 위의 값을 이진수 변환 하면 -> 1111 1111.1111 1111.1111 1111.1111 1100
         - 이유2 : 위의 이진수 값은 '1'이 연속적이다.

4. Network 관련 용어 정리
  * 인터넷     : 네트워크 묶음(연합), 하나의 프로토콜만 사용(TCP / IP).
  * 인트라넷   : 특정 내부 네트워크 (내부에서만 사용 - TCP /IP사용).
  * 엑스트라넷 : 특정 외부 네트워크.
  * LAN (Local Area Network) : 어느 한정된 공간에서 네트워크 구성.
  * WAN (Wide Area Network)  : 서로 멀리 떨어진 것들을 네트워크 구성.
  * 폴트 톨러런트 : 네트워크 문제 발생 시를 대비해 놓은 것. ex)라우터 2대를 네트워크 구성 후
                          1대 고장 시 자동으로 나머지 한대로 연결.
  * 로드 밸런싱   : 로드 분산. ex)인터넷 회선 2개로 사용, DATA들이 두 회선 중 하나를 이용
                          ->로드 분산되는 효과.
  * Looping
      1) 스위치나 브리지에서 자주 발생하는 문제 현상.
      2) DATA프레임이 네트워크 상에서 무한정으로 도는 현상.
      3) 해결책 : 스패닝 트리 알고리즘, 시스코의 이더 채널, 업링크 패스트.

반응형