네트워크의 기본 개념
컴퓨터 네트워크는 두 대 이상의 컴퓨터가 데이터를 교환할 수 있도록 연결된 시스템이다. 네트워크는 다양한 목적을 위해 사용되며, 파일 공유, 자원 공유, 통신 등을 포함한다.
네트워크의 주요 구성 요소
- 노드(Node) : 네트워크에 연결된 장치(컴퓨터, 프린터 등).
- 링크(Link) : 노드 간의 물리적 또는 논리적 연결.
- 프로토콜(Protocol) : 데이터를 교환하는 규칙과 절차.
네트워크 유형
- LAN (Local Area Network) : 좁은 지역(예: 가정, 사무실) 내의 네트워크.
- WAN (Wide Area Network) : 넓은 지역(예: 국가, 대륙) 내의 네트워크.
- MAN (Metropolitan Area Network) : 도시 내의 네트워크.
- PAN (Personal Area Network) : 개인 장치 간의 네트워크.
OSI 모델과 TCP/IP 모델
OSI 모델 (Open Systems Interconnection Model)
OSI 모델은 네트워크 통신을 7계층으로 나누어 각 계층이 특정 기능을 수행하도록 설계되었다.
-
물리 계층(Physical Layer)
- 데이터 전송의 물리적 매체와 전기적 특성을 다룬다.
- 장비: 케이블, 허브.
- 기능: 비트 전송.
-
데이터 링크 계층(Data Link Layer)
- 물리 계층에서 발생할 수 있는 오류를 수정하고 데이터 프레임을 생성한다.
- 장비: 스위치, 브리지.
- 프로토콜: Ethernet, PPP.
- 기능: 프레임 전송, 오류 검출 및 수정.
-
네트워크 계층(Network Layer)
- 데이터의 논리적 주소를 기반으로 네트워크 내에서 데이터 패킷을 라우팅한다.
- 장비: 라우터.
- 프로토콜: IP(Internet Protocol).
- 기능: 경로 결정, 패킷 전달.
-
전송 계층(Transport Layer)
- 종단 간 데이터 전송을 관리하고 오류 검출 및 수정, 데이터 흐름 제어를 수행한다.
- 프로토콜: TCP(Transmission Control Protocol), UDP(User Datagram Protocol).
- 기능: 데이터 세그멘트화, 연결 관리.
-
세션 계층(Session Layer)
- 통신 세션을 설정, 유지 및 종료한다.
- 기능: 세션 관리, 동기화.
-
표현 계층(Presentation Layer)
- 데이터 형식을 변환하고, 암호화 및 압축을 수행한다.
- 기능: 데이터 변환, 암호화, 압축.
-
응용 계층(Application Layer)
- 사용자와 직접 상호작용하는 응용 프로그램 서비스를 제공한다.
- 프로토콜: HTTP, FTP, SMTP.
- 기능: 네트워크 서비스 제공.
TCP/IP 모델
TCP/IP 모델은 인터넷과 같은 네트워크에서 사용되는 프로토콜 스위트입니다. OSI 모델과 유사하지만 4계층으로 구성됩니다.
-
네트워크 인터페이스 계층(Network Interface Layer)
- OSI 모델의 물리 계층과 데이터 링크 계층을 포함한다.
-
인터넷 계층(Internet Layer)
- OSI 모델의 네트워크 계층에 해당한다.
- 프로토콜: IP, ICMP, ARP.
-
전송 계층(Transport Layer)
- OSI 모델의 전송 계층과 유사하다.
- 프로토콜: TCP, UDP.
-
응용 계층(Application Layer)
- OSI 모델의 세션, 표현, 응용 계층을 포함한다.
- 프로토콜: HTTP, FTP, SMTP, DNS.
네트워크 장비
라우터 (Router)
- 기능 : 네트워크 간의 데이터 패킷을 라우팅(경로 결정)한다. 서로 다른 네트워크 간의 연결을 관리하고, 데이터 패킷을 적절한 경로로 전달한다.
- 특징 : IP 주소를 기반으로 패킷을 전달하며, 네트워크 분할 및 트래픽 관리 기능을 제공한다.
스위치 (Switch)
- 기능 : 동일한 네트워크 내에서 데이터 프레임을 전송한다. 각 포트에 연결된 장치를 식별하고, 데이터 프레임을 목적지 MAC 주소를 기반으로 전달한다.
- 특징 : 데이터 링크 계층 장비이며, 네트워크 성능을 향상시키고 충돌 도메인을 줄인다.
허브 (Hub)
- 기능 : 모든 포트에 데이터를 브로드캐스트 방식으로 전송한다. 연결된 모든 장치에 동일한 데이터를 전달한다.
- 특징 : 단순한 물리 계층 장비로, 충돌 도메인이 크고 효율성이 낮다.
인터넷 프로토콜
IP 주소 (IP Address)
- 개념 : 네트워크에서 장치들을 식별하기 위한 고유 주소.
- 버전 : IPv4(32비트 주소 체계, 약 43억 개 주소), IPv6(128비트 주소 체계, 사실상 무한한 주소 공간).
- 형식 : IPv4는 4개의 옥텟(8비트)로 표현되며, 점으로 구분(예: 192.168.0.1).
DNS (Domain Name System)
- 기능 : 도메인 이름을 IP 주소로 변환하는 시스템.
- 작동 방식 : 사용자가 도메인 이름을 입력하면, DNS 서버가 해당 도메인 이름에 대한 IP 주소를 반환.
- 예 :
www.example.com을 입력하면, DNS는 해당 도메인의 IP 주소를 반환하여 접속을 가능하게 한다.
HTTP/HTTPS (HyperText Transfer Protocol / Secure HTTP)
- HTTP : 웹 브라우저와 웹 서버 간의 데이터를 주고받기 위한 프로토콜. 텍스트, 이미지, 비디오 등 다양한 데이터를 전송.
- HTTPS : HTTP에 SSL/TLS 암호화를 적용하여 데이터 전송의 기밀성과 무결성을 보장한다. 보안이 중요한 웹 사이트에서 사용된다.
- 포트 번호 : HTTP는 기본적으로 포트 80, HTTPS는 포트 443을 사용.
네트워크 보안
방화벽 (Firewall)
- 기능 : 네트워크 경계에서 트래픽을 필터링하여 허가된 트래픽은 통과시키고, 허가되지 않은 트래픽은 차단.
- 종류
- 패킷 필터링 방화벽 : IP 주소, 포트 번호, 프로토콜 등을 기반으로 트래픽을 필터링한다.
- 상태 기반 방화벽 : 트래픽의 상태 정보를 추적하여 필터링.
- 애플리케이션 레벨 방화벽 : 애플리케이션 계층에서 트래픽을 필터링.
- 차세대 방화벽 (NGFW) : 침입 방지, 애플리케이션 제어, 사용자 식별 등의 고급 기능을 제공.
침입 탐지 시스템 (IDS, Intrusion Detection System)
- 기능 : 네트워크나 시스템을 모니터링하여 비정상적인 활동이나 공격을 탐지.
- 종류
- 네트워크 기반 IDS (NIDS) : 네트워크 트래픽을 모니터링하여 침입을 탐지.
- 호스트 기반 IDS (HIDS) : 개별 호스트의 로그 파일, 시스템 콜 등을 모니터링하여 침입을 탐지.
- 서명 기반 IDS : 알려진 공격 패턴(서명)과 비교하여 침입을 탐지.
- 행위 기반 IDS : 정상적인 동작과 비교하여 비정상적인 행위를 탐지.
가상 사설망 (VPN, Virtual Private Network)
- 기능: 공용 네트워크(인터넷)를 통해 사설 네트워크를 안전하게 연결하는 기술. 터널링, 암호화, 인증 등을 사용하여 데이터의 기밀성과 무결성을 보호.
- 작동 방식
- 터널링 : 데이터 패킷을 안전한 터널을 통해 전송.
- 암호화 : 전송되는 데이터를 암호화하여 도청을 방지.
- 인증 : 사용자와 장치의 신원을 확인하여 불법 접근을 방지.
- 사용 사례 : 원격 근무, 안전한 인터넷 접속, 지리적 제한 우회.
보안 소켓 계층 (SSL/TLS, Secure Sockets Layer / Transport Layer Security)
- 기능 : 인터넷에서 데이터를 안전하게 전송하기 위한 암호화 프로토콜. TLS는 SSL의 후속 버전으로, 더 강화된 보안을 제공.
- 작동 방식
- 암호화 : 전송되는 데이터를 암호화하여 기밀성을 유지.
- 인증 : 서버와 클라이언트 간의 신원을 확인하여 신뢰성을 보장.
- 무결성 : 전송된 데이터가 변경되지 않았음을 확인.
- 사용 사례 : 웹 브라우저와 웹 서버 간의 안전한 통신(HTTPS), 이메일 전송 보안, VPN 연결.