네트워크란?
컴퓨터 등의 장치들이 통신 기술을 이용하여 구축하는 연결망
노드(node)와 링크(link)가 서로 연결되어 있고 리소스를 공유하는 집합
좋은 네트워크란?
많은 처리량을 처리하고 지연시간이 짧고 장애 빈도가 적으며 좋은 보안을 갖춘 네트워크
처리량 (throughput)
성공적으로 전달되는 데이터의 양
단위 = bps(bits per second) -> 초당 전송
많은 처리량을 가진다 = 많은 트래픽을 처리한다
트래픽
특정 시점에 흐르는 데이터
대역폭
주어진 시간 동안 네트워크 연결을 통해 흐를 수 있는 최대 비트 수
지연 시간 (latency)
요청이 처리되는 시간 (두 장치 사이를 왕복하는 데 걸린 시간)
네트워크 토폴로지 (Network Topology)
노드와 링크가 어떻게 배치되어 있는지에 대한 방식이자 연결 형태
트리 토폴로지
계층형 토폴로지 / 트리 형태의 네트워크 구성
- 장점: 노드 추가 삭제 용이
- 단점: 특정 노드에 트래픽 집중 시 하위 노드에 영향
버스 토폴로지
중앙 통신 회선 하나에 여러 개의 노드가 연결되어 공유하는 네트워크 구성
근거리 통신망 (LAN)에서 사용
- 장점: 설치 비용이 적음 / 신뢰성 우수 / 노드 추가 삭제 용이
- 단점: 스푸핑 발생 가능
스푸핑 (Spoofing)
공격자가 신원을 속이거나 데이터를 위조하여 다른 사용자나 시스템을 속이는 행위
ex) 네트워크에서 데이터를 가로채거나 위조하여 원래 목적지 대신 공격자가 원하는 방향으로 보내는 행위
스타 토폴로지
중앙에 있는 노드에 모두 연결된 네트워크 구성
- 장점: 노드 추가 쉬움 / 에러 탐지 쉬움 / 패킷 충돌 발생 가능성 적음
- 단점: 중앙 노드에서 장애 발생 시 전체 네트워크 사용 불가 / 고비용의 설치
링형 토폴로지
고리 모양의 네트워크 망 / 하나의 연속된 길을 통해 통신하는 망 구성
- 장점: 노드 수 증가해도 네트워크 상의 손실 거의 X / 충돌 발생 가능성 적음 / 노드 고장 발견 쉬움
- 단점: 네트워크 구성 변경이 어려움 / 회선에 장애 발생 시 전체 네트워크에 영향
메시 토폴로지 (mesh topology)
망형 토폴로지 / 그물망 형태의 네트워크 망
- 장점: 한 단말 장치에서 장애 발생해도 여러 개의 경로가 존재하여 네트워크를 계속 사용 가능 / 트래픽 분산 처리 가능
- 단점: 노드 추가 어려움 / 구축 비용과 운용 비용이 고가
병목 현상 (bottleneck)
특정 지점에서 데이터 흐름이 제한되어 네트워크 전체 성능이 저하되는 현상
네트워크 토폴로지와 병목 현상의 관계
- 병목 현상을 찾을 때 토폴로지가 중요한 기준이 된다.
병목 현상 주된 원인
- 네트워크 대역폭
- 네트워크 토폴리지
- 서버 CPU, 메모리 사용량
- 비효율적인 네트워크 구성
네트워크 분류
네트워크는 규모를 기반으로 분류할 수 있다
LAN (Local Area Network) | MAN (Metropolitan Area Network) | WAN (Wide Area Network) | |
규모 | 사무실과 개인적으로 소유 가능한 규모 |
대도시 지역 네트워크 / 서울시 등 | 광역 네트워크 / 국가 or 대륙 |
전송 속도 | 빠름 | 평균 | 느림 |
혼잡도 | X | LAN 보다 혼잡 | MAN 보다 혼잡 |
네트워크 성능 분석 명령어
ping (Packet INternet Groper)
네트워크 상태를 확인하기 위해 특정 호스트(서버, IP 주소 등)로 패킷을 보내고 응답 시간을 측정하는 명령어
- 네트워크 연결 상태 확인: 응답하는지 확인
- 패킷 왕복 시간 측정: 네트워크 속도 측정
- 패킷 손실 여부 검사
ping은 TCP/IP 프로토콜 중에 ICMP 프로토콜을 통해 작동
ICMP 프로토콜을 지원하지 않거나 정책상 ICMP나 traceroute를 차단하는 대상에는 ping 테스팅 불가
ICMP 프로토콜이란?
Internet Control Message Protocol의 약자
인터넷 프로토콜(IP)의 확장 프로토콜
네트워크에서 오류 보고, 진단, 정보 교환을 위해 사용
netstat (network statistics)
접속되어 있는 서비스들의 네트워크 연결 상태, 포트 사용 현황, 라우팅 테이플, 프로토콜 통계 등을 확인하는 명령어
주로 서비스의 포트가 열려 있는지 확인할 때 사용
nslookup
DNS에 관련된 내용을 확인하기 위해 사용
특정 도메인에 매핑된 IP 확인하기 위해 사용
tracert
리눅스에서는 traceroute
목적지 노드까지 네트워크 경로를 확인할 때 사용
'CS > 네트워크' 카테고리의 다른 글
로드밸런서 (0) | 2025.02.20 |
---|---|
TCP/IP 4계층 네트워크 기기 (0) | 2025.02.20 |
DNS (Domain Name System) (0) | 2025.02.19 |
TCP / UPD (0) | 2025.02.18 |
OSI 7계층 (0) | 2025.02.14 |