CS
[CS / 네트워크] 2.1 네트워크의 기초
개발하는 감자입니다
2024. 5. 7. 18:28
728x90
안녕하세요! 개발감자입니다.
오늘은 CS의 네트워크 중에서도 2.1 네트워크의 기초에 대해서 정리해보았습니다.
2.1 네트워크의 기초
- 네트워크 : 노드와 링크가 서로 연결되어 있거나 연결되어 있으며 리소스를 공유하는 집합
- 노드 : 네트워크 장치 (서버, 라우터, 스위치 )
- 링크 : 유선 또는 무선을 의미
2.1.1 처리량과 지연 시간
좋은 네트워크를 만드는 것이 중요함.
- 좋은 네트워크 : 많은 처리량, 짧은 지연시간, 적은 장애 빈도, 좋은 보얀을 갖춘 네트워크
- 처리량(throughput) : 링크를 통해 전달되는 단위 시간 당 데이터
- 단위 : bps(bits per second) : 초당 전송 또는 수신되는 비트 수
- 영향을 받는 요소
- 사용자들의 트래픽
- 네트워크 장치 간의 대역폭 (주어진 시간 동안 네트워크 연결을 통해 흐를 수 있는 최대 비트 수)
- 네트워크 중간에 발생하는 에러
- 장치의 하드웨어 스팩
- 지연 시간 (latency) : 요청이 처리되는 시간
- 예를 들어, 어떤 메세지가 두 장치 사이를 왕복하는 데 걸린 시간
- 영향을 받는 요소
- 매체 타입(무선, 유선)
- 패킷 크기
- 라우터의 패킷 처리 시간
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
반응형