: 컴퓨터 등의 장치들이 통신 기술을 이용하여 구축하는 연결망
Net + Work
두 대 이상의 컴퓨터들을 연결하고 서로 통신할 수 있는 것
어떤 연결을 통해 컴퓨터의 자원을 공유하는 것
네트워크 : 노드와 링크가 서로 연결되어 있거나, 연결되어 있으며 리소스를 공유하는 집합
Node : 서버, 라우터, 스위치 등 네트워크 장치
Link : 유선 또는 무선
처리량 (Throughput) : 링크를 통해 전달되는 단위 시간당 데이터양
"얼마나 많은 데이터가 단위시간 내에 목적지에 전달될 수 있는가?"
사용자들이 많이 접속할 때마다 커지는 트래픽, 네트워크 장치 간의 대역폭, 네트워크 중간에 발생하는 에러, 장치의 하드웨어 스펙에 영향을 받음
시스템의 출력률을 명시할 땐 평균 출력(Average Throughput) 값을 사용함
📌처리량의 단위
가장 많이 사용되는 것은 bps, 더 큰 출력을 가진 시스템은 Mbps, Gbps 사용
- bps(bits per second) - 초당 전송 또는 수신되는 비트 수
- megabits per second (Mbps)
- gigabits per second (Gbps)
대역폭(bandwidth) : 단위 시간 내 전달할 수 있는 최대 크기의 전달 용량
주어진 시간 동안 네트워크 연결을 통해 흐를 수 있는 최대 비트 수
대역폭 자체는 전달 속도와는 관계가 없으며 오히려 용량(capacity)과 관계가 있음
대역폭이 곧 인터넷 속도를 의미하는 경우가 꽤 많음
- 일반적으로 대역폭은 고정되어 있다. (cf. 가변 대역폭을 사용하는 경우도 종종 있음)
- 출력을 시간별로 검사하면, 시스템을 시작하기 전에는 0, 사용자의 요청의 양에 따라 전달하는 bit 수가 점차 변하게 됨
네트워크 지연 (network latency) : 예상하지 못한 시간(time)이 데이터 전달에 소요되는 현상
지연 시간 : 요청이 처리되는 시간. 어떤 메시지가 두 장치 사이를 왕복하는 데에 걸린 시간
매체 타입(무선, 유선), 패킷 크기, 라우터의 패킷 처리 시간에 영향을 받음
네트워크 혼잡 (network congestion) : 전달해야 하는 데이터의 양이 네트워크에 몰리는 현상
패킷 손실 (packet loss) : 패킷이 전달되는 동안 예상치 못하게 손실되는 현상
💡 요약
출력은 높고 대역폭은 작다면 ➡ 네트워크 출구에서 대기하는 데이터가 많음 ➡ 시스템의 성능(performance)에 안 좋은 영향
출력은 낮은데 대역폭은 크다면 ➡ 대역폭, 비용의 낭비
네트워크 설계시 토폴로지를 고려해야 함
네트워크 토폴로지 (network topology) : 노드와 링크가 어떻게 배치되어 있는지에 대한 방식이자 연결 형태
tree topology
bus topology
📌 스푸핑 (Spoofing) : LAN상에서 송신부의 패킷을 송신과 관련 없는 다른 호스트에 가지 않도록 하는 스위칭 기능을 마비시키거나 속여 특정 노드에 해당 패킷이 오도록 처리하는 것
star topology
ring topology
mesh topology
토폴로지는 병목 현상을 찾을 때 중요한 기준이 되기 때문에 중요하다.
: 전체 시스템의 성능이나 용량이 하나의 구성 요소로 인해 제한을 받는 현상
애플리케이션 코드 상에는 전혀 문제가 없는데 사용자가 서비스로부터 데이터를 가져오지 못하는 상황 ➡ 네트워크 병목현상일 가능성도 있음!
ping
Packet INternet Groper
: 네트워크 상태를 확인하려는 대상 노드를 향해, 일정 크기의 패킷을 전송하는 명령어
👉 ping 테스팅 불가능한 경우
- ICMP 프로토콜을 지원하지 않는 기기를 대상으로 테스트할 경우
- 네트워크 정책상 ICMP나 traceroute를 차단하는 대상의 경우
# ping [IP주소 또는 도메인 주소]
ping www.google.com -n 12
: -n 12
: 12번의 패킷을 보내고 12번의 패킷을 받음netstat
network statistics
: 접속되어 있는 서비스들의 네트워크 상태를 표시하기
netstat
: 현재 내가 접속하고 있는 사이트 등에 관한 네트워크 상태 리스트 확인 가능netstat -ano
: 내 PC에서 사용중인 포트 확인하기nslookup
name server lookup
: DNS 서버로부터 여러 가지 정보를 얻을 수 있는 명령어
nslookup
# 아래에, 특정 도메인 입력. 예를 들면, google.com
# 그럼 해당 도메인에 대한 DNS 확인 가능
tracert
tracert www.google.com
: google 사이트에 도달하기까지의 경로 추적ftp : 대형 파일 전송하여 테스팅
tcpdump : 노드로 오고 가는 패킷 캡처
📌 네트워크 분석 프로그램
- wireshark
- netmon
: 다른 장치들끼리 데이터를 주고받기 위해 설정된 공통된 인터페이스
IEEE802.3
: 유선 LAN 프로토콜. 유선으로 LAN을 구축할 때 쓰임
참고자료