CS

[CS / 네트워크] 2.1 네트워크의 기초

개발하는 감자입니다 2024. 5. 7. 18:28
728x90

 

안녕하세요! 개발감자입니다.

오늘은 CS의 네트워크 중에서도 2.1 네트워크의 기초에 대해서 정리해보았습니다. 

 

2.1 네트워크의 기초

  • 네트워크 : 노드와 링크가 서로 연결되어 있거나 연결되어 있으며 리소스를 공유하는 집합
    • 노드 : 네트워크 장치 (서버, 라우터, 스위치 )
    • 링크 : 유선 또는 무선을 의미

 

2.1.1 처리량과 지연 시간

좋은 네트워크를 만드는 것이 중요함.

  • 좋은 네트워크 : 많은 처리량, 짧은 지연시간, 적은 장애 빈도, 좋은 보얀을 갖춘 네트워크
  • 처리량(throughput) : 링크를 통해 전달되는 단위 시간 당 데이터
    • 단위 : bps(bits per second) : 초당 전송 또는 수신되는 비트 수
    • 영향을 받는 요소
      1. 사용자들의 트래픽
      2. 네트워크 장치 간의 대역폭 (주어진 시간 동안 네트워크 연결을 통해 흐를 수 있는 최대 비트 수)
      3. 네트워크 중간에 발생하는 에러
      4. 장치의 하드웨어 스팩
  • 지연 시간 (latency) : 요청이 처리되는 시간
    • 예를 들어, 어떤 메세지가 두 장치 사이를 왕복하는 데 걸린 시간
    • 영향을 받는 요소
      1. 매체 타입(무선, 유선)
      2. 패킷 크기
      3. 라우터의 패킷 처리 시간

 

2.1.2 네트워크 토폴로지와 병목현상

  • 네트워크 토폴로지
    • 네트워크를 설계할 때 고려하는 요소
    • 노드와 링크가 어떻게 배치되어 있는지에 대한 방식이자 연결 형태

1. 트리 토폴로지

  • 계층형 토폴로지, 트리 형태로 배치한 네트워크 구성
  • 장점 : 노드의 추가, 삭제가 쉬움
  • 단점 : 특정 노드에 트래픽이 집중될 때 하위 노드에 영향을 끼칠 수 있음

2. 버스 토폴로지

  • 중앙통신 회선 하나에 여러 개의 노드가 연겨로디어 공유하는 네트워크 구성
  • 근거기 통신망 (LAN)에서 사용
  • 장점 : 설치비용이 적고 신뢰성이 우수, 중앙 통신 회선에 노드를 추가 및 삭제가 쉬움
  • 단점 : 스푸핑 가능
  • 스푸핑: LAN상에서 송신부의 패킷을 송신과 관련 없는 다른 호스트에 가지 않도록 하는 스위칭 기능을 마비 혹은 속여서 특정 노드에 해당 패킷이 오도록 처리하는 것 -> 올바르게 수신부로 가야 할 패킷이 악의적인 노드에 전달됨

3. 스타 토폴로지

  • 성형 토폴로지, 중앙에 있는 도으에 모두 연결된 네트워크 구성
  • 장점 : 노드 추가와 에러가 탐지가 쉬움. 패킷의 충돌 발생 가능성이 적음. 장애 발생해도 쉽게 발견이 가능하며, 중앙 노드를 제외하고 장애 발생 시 다른 노드에 영향을 적게 끼침
  • 단점 : 중앙 노드에 장애가 발생하면 전체 네트워크를 사용 불가, 설치 비용이 고가


4. 링형 토폴로지

  • 각각의 노드가 양 옆의 노드와 연결 → 전체적으로 고리처럼 하나의 연속된 길을 통신하는 망 구성 방식
  • 장점 : 노드의 수가 증가 → 네트워크상의 손실이 거의 없고 충돌 발생 가능성 낮음. 노드의 고장 발견을 쉽게 찾을 수 있음
  • 단점 : 네트워크 구성 변경이 어려움. 회선에 장애가 발생 시 전체에 영향을 끼침

5. 메시 토폴로지

  • 망형 토폴로지, 그물망 처럼 연결되어 있는 구조
  • 장점 : 한 단말 장치에 장애 발생해도 여러개의 경로가 존재하여 네트워크를 계속 사용 가능. 트래픽 분산 처리 가능
  • 단점 : 노드 추가가 어려움. 구축 및 운용 비용이 고가
  • 병목현상
    • 전체 시스템의 성능이나 용량이 하나의 구성 요소로 인해 제한을 받는 현상
    • 토폴로지(네트워크의 구조)가 중요한 이유 → 병목 현상을 찾을 때 중요한 기준이 되기 때문

 

2.1.3 네트워크 분류

네트워크는 규모를 기반으로 분류함

  • LAN (Local Area Network) : 사무실, 개인적 소유 가능
  • MAN (Metropolitan Area Network) : 서울시 등 시 정도의 규모
  • WAN (Wide Area Network) : 세계 규모

1. LAN (Local Area Network)

  • 근거리 통신을 의미
  • 같은 건물이나 캠퍼스 같은 좁은 공간에서 운영
  • 장점 : 전송 속도가 빠르고 혼잡하지 않음

2. MAN (Metropolitan Area Network)

  • 대도시 지역 네트워크
  • 도시 같은 넓은 지역에서 운영
  • 전송 속도는 평균, LAN보다는 더 많이 혼잡

3. WAN (Wide Area Network)

  • 광역 네트워크를 의미
  • 국가 도는 대륙 같은 더 넓은 지역에서 운영
  • 전송속도는 낮으며 MAN보다 더 혼잡

2.1.4 네트워크 성능 분석 명령어

애플리케이션 코드는 문제가 없는데 데이터를 못 가져오면 → 네트워크 병목 현상 때문

 

네트워크 병목 현상의 주된 원인

  • 네트워크 대역폼
  • 네트워크 토폴로지
  • 서버 CPU, 메모리 사용량
  • 비효율적인 네트워크 구성
명령어 내용
ping 네트워크 상태를 확인하려는 노드를 향해 일정 크기의 패킷을 전송하는 명령어
- TCP/IP 프로토콜 중 ICMP 프로토콜을 통해 동작
netstat 접속되어 있는 서비스들의 네트워크 상태 표시
- 네트워크 접속, 라우팅 테이블, 네트워크 프로토콜 등
- 주로 서비스의 포트가 열려있는지 확인할 때 사용
nslookup 주로 DNS에 관련된 내용을 확인하기 위해 쓰는 명령어
- 특정 도메인에 매핑된 IP를 확인하기 위해 사용
tracert 윈도우에서는 tracert, 리눅스에서는 traceoute라는 명령어로 구동 목적지 노드까지 네트워크 경로를 확인할 때 사용하는 명령어
- 구글 사이트에 도달하기까지의 경로 추적을 확인하고 싶다

 

네트워크로부터 발생한 문제점을 확인 후 네트워크 성능 분석해봐야 함.

 

2.1.5 네트워크 프로토콜 표준화

네트워크 프로토콜 : 다른 장치들끼리 데이터를 주고받기 위해 설정된 공통된 인터페이스

  • IEEE 또는 IETF라는 표준화 단체가 이를 정함
  • IEEE802.3은 유선 LAN 프로토콜, 유선으로 구축할 때 쓰이는 프로토콜
    • 이를 통해 만든 기업은 다른 장치라도 서로 데이터 수신 가능

 

면접을 위한 CS 전공지식 노트 | 주홍철 - 교보문고

면접을 위한 CS 전공지식 노트 | 디자인 패턴, 네트워크, 운영체제, 데이터베이스, 자료 구조, 개발자 면접과 포트폴리오까지! CS 전공지식 습득과 면접 대비, 이 책 한 권이면 충분하다! 개발자 면

product.kyobobook.co.kr

이 포스팅은 면접을 위한 CS 전공지식 노트를 기반으로 작성되었습니다.

 

728x90
반응형