컴퓨터 네트워크란 서로 데이터를 교환하고 리소스를 공유할 수 있는 디지털 전기통신망을 말합니다.
네트워크는 노드(node)와 링크(like)가 서로 연결되어 있거나 연결되지 않은 집합체입니다.
노드: 서버, 라우터, 스위치 등의 네트워크 장비
링크: 유선 또는 무선
처리량(throughput)이란 링크를 통해 전달되는 단위 시간당 데이터 양을 말합니다.
처리량은 사용자들이 많이 접속할 때마다 커지는 트래픽, 네트워크 장치 간의 대역폭, 네트워크 중간에 발생하는 에러, 장치의 하드웨어 스펙에 영향을 받습니다.
지연 시간(latency)이란 요청이 처리되는 시간을 말하며 어떤 메시지가 두 장치 사이를 왕복하는 대 걸린 시간을 말합니다.
지연 시간은 매체 타입(무선, 유선), 패킷 크기, 라우터의 패킷 처리 시간에 영향을 받습니다.
네트워크 토폴로지는 노드와 링크가 어떻게 배치되어 있는디에 대한 방식이자 연결 형태를 의미합니다.
Tree Topology
노드의 추가, 삭제가 쉬움
특정 노드에 트래픽이 집중되면 하위 노드에 영향을 끼칠 수 있음
Bus Topology
LAN 에서 사용함
설치가 쉽고 신뢰성이 우수함
중앙 통신 회선에 노드를 추가하거나 삭제하기 쉬움
스푸핑에 취약함
Star Topology
노드 추가 쉬움
에러 탐지 쉬움
패킷 충돌 가능성 낮음
중앙에 에러가 생기면 모든 노드가 영향을 받음
Ring Topology
노드 수가 증가되어도 네트워크 상 손실이 없음
충돌 발생 가능성이 적음
노드의 고장을 쉽게 찾을 수 있음
네트워크 구성 변경이 어려움
회선에 장애가 발생하면 전체 네트워크에 영향을 끼침
Mesh Topology
트래픽 분산처리가 가능
노드 하나가 에러가 생겨도 장애가 전체로 퍼지지 않음
노드 추가가 어려움
구축 비용과 운영 비용이 많이 듬
토폴로지가 중요한 이유는 병목 현상을 찾을 때 중요한 기준이 될 수 있기 때문입니다.
LAN(Local Area Network)
근거리 통신망
같은 건물이나 캠퍼스 같은 좁은 공간에서 운영
전송 속도가 빠르고 혼잡하지 않음
MAN(Metropolitan Area Network)
대도시 지역 네트워크
전송 속도는 평균
LAN보다는 더 많이 혼잡
WAN(*Wide Area Network)
광역 네트워크
전송 속도 낮음
MAN보다는 더 혼잡
규모 기반으로 본다면 LAN < MAN < WAN 으로 볼 수 있습니다.
TCP/IP 4계층 모델은 네트워크에서 사용되는 통신 프로토콜의 집합으로 계층들은 프로토콜의 네트워킹 번위에 따라 네 개의 추상화 계층으로 구성됩니다.
TCP/IP 계층은 네 개의 계층을 가지고 있으며 OSI 7계층과 많이 비교합니다.
애플리케이션 계층은 웹 서비스, 이메일 등 서비스를 실질적으로 사람들에게 제공하는 층입니다.
대표 스택: FTP, HTTP, SSH, SMTP, DNS
전송 계층은 송신자와 수신자를 연결하는 통신 서비스를 제공하며 애플리케이션과 인터넷 계층 사이의 데이터가 전달될 때의 중계 역할을 하는 층입니다.
대표 스택: TCP, UDP, QUIC
인터넷 계층은 장치로부터 받은 네트워크 패킷을 IP 주소로 지정된 목적지로 전송하기 위해 사용되는 계층입니다.
대표 스택: IP, ARP, ICMP
링크 계층은 전선, 광섬유, 무선 등으로 실질적으로 데이터를 전달하며 장치 간에 신호를 주고받는 규칙을 정하는 계층입니다. 참고로 네트워크 접근 계층이라고도 합나다.
대표 스택: 이더넷
링크 계층을 물리 계층과 데이터 링크 계층으로 나누기도 합니다.
물리 계층: 무선 LAN과 유선 LAN을 통해 0과 1로 이루어진 데이터를 보내는 계층
데이터 링크 계층: 이더넷 프레임을 통해 에러 확인, 흐름 제어, 접근 제어를 담당하는 계층
HTTP를 통해 웹 서버에 있는 데이터를 요청한다면 다음과 같은 과정이 일어납니다.
애플리케이션 계층에서 정송 계층으로 사용자가 보내는 요청(request) 값들이 캡슐화 과정을 거쳐 전달되고, 다시 링크 계층을 통해 해당 서버와 통신을 하고, 해당 서버의 링크 계층으로부터 애플리케이션까지 비캡슐화 과정을 거쳐 데이터가 전송됩니다.
캡슐화 과정: 상위 계층의 헤더와 데이터를 하위 계층의 데이터 부분에 포함시키고 해당 계층의 헤더를 삽입하는 과정
비캡슐화 과정: 하위 계층에서 상위 계층으로 가며 각 계층의 헤어 부분을 제거하는 과정