한 권으로 끝내는 네트워크 개념 기초 핸드북: TCP/IP부터 로드밸런서까지

  • 이 핸드북은 복잡한 네트워크 개념을 쉽게 이해할 수 있도록 기초부터 심화까지 단계적으로 설명한다.

  • OSI 7계층의 역할과 TCP/IP의 동작 원리를 시작으로, IP 주소와 도메인 이름의 관계, 그리고 대규모 서비스의 핵심 기술인 로드밸런서의 원리를 다룬다.

  • 초보자도 쉽게 따라오도록 각 개념을 실생활의 비유와 함께 설명하며, 주요 용어와 동작 방식을 명확히 정리한다.


네트워크의 탄생: 왜 모든 것을 계층화해야 했을까?

컴퓨터가 처음 등장했을 때, 통신은 매우 원시적인 방식이었다. 두 대의 컴퓨터를 물리적인 선으로 연결하고 데이터를 주고받는 방식은 매우 비효율적이었다. 새로운 기술이나 장치가 추가될 때마다 모든 시스템을 처음부터 다시 설계해야 했고, 한 부분에서 문제가 발생하면 전체 통신망이 마비되는 일이 비일비재했다.

이러한 문제들을 해결하기 위해 네트워크 통신을 표준화하고 효율적으로 관리할 필요가 생겼다. 그 해답으로 등장한 것이 바로 계층형 모델이다. 복잡한 통신 과정을 여러 단계의 계층으로 나누어, 각 계층이 특정 역할만을 담당하도록 설계한 것이다. 마치 공장에서 하나의 제품을 여러 생산 라인에서 분업하여 만드는 것과 같다. 한 라인에 문제가 생겨도 다른 라인에 영향을 주지 않으면서 문제 해결이 쉽고, 특정 계층의 기술만 발전시켜도 전체 시스템을 바꾸지 않고 업그레이드할 수 있게 되었다.

이러한 계층형 모델의 대표적인 예가 바로 OSI 7계층과 TCP/IP 모델이다.


1. 통신의 기본 구조: OSI 7계층 핸드북

OSI(Open Systems Interconnection) 7계층 모델은 국제표준화기구(ISO)가 제정한 네트워크 통신 표준 모델로, 컴퓨터 간의 통신 과정을 7개의 논리적인 계층으로 나눈다. 각 계층은 독립적인 기능을 수행하면서 상위 계층에게 서비스를 제공하고 하위 계층에게 서비스를 요청한다. 이 모델을 이해하면 데이터가 어떻게 흘러가는지, 어떤 문제가 어느 지점에서 발생했는지 파악하기 용이하다.

the OSI model diagram 이미지

라이선스 제공자: Google

OSI 7계층의 구성 및 역할

  1. 물리 계층 (Physical Layer):

    • 역할: 가장 낮은 단계로, 데이터를 전기 신호나 광 신호 등으로 변환하여 물리적인 매체(케이블, 무선 등)를 통해 전송하는 역할을 한다. 단순히 0과 1의 비트 스트림을 전송하는 것에만 집중한다.

    • 단위: 비트 (Bit).

    • 예시: 허브, 리피터, 케이블, 랜카드.

  2. 데이터 링크 계층 (Data Link Layer):

    • 역할: 물리 계층을 통해 전송되는 비트들을 **프레임(Frame)**이라는 논리적 단위로 묶어 전송하고, 에러를 감지하거나 수정하는 역할을 한다. 또한, 같은 네트워크 내에서 장치 간의 MAC 주소를 통해 통신한다.

    • 단위: 프레임 (Frame).

    • 예시: 이더넷(Ethernet), 스위치, 브릿지.

  3. 네트워크 계층 (Network Layer):

    • 역할: 데이터를 패킷(Packet) 단위로 묶어 송신지에서 목적지까지 최적의 경로로 전송하는 라우팅 기능을 담당한다. 이때 논리적인 주소인 IP 주소를 사용한다.

    • 단위: 패킷 (Packet).

    • 예시: IP(Internet Protocol), 라우터.

  4. 전송 계층 (Transport Layer):

    • 역할: 데이터를 세그먼트(Segment) 단위로 묶어, 신뢰성 있고 안정적인 데이터 전송을 보장한다. 포트 번호를 사용하여 여러 애플리케이션 프로세스 간의 통신을 구분하며, 대표적인 프로토콜인 TCP와 UDP가 이 계층에 속한다.

    • 단위: 세그먼트 (Segment).

    • 예시: TCP, UDP.

  5. 세션 계층 (Session Layer):

    • 역할: 컴퓨터 간의 연결(세션)을 설정, 유지, 종료하는 역할을 한다. 통신 중 발생하는 동기화(Synchronizing) 문제를 해결하며, 데이터가 유실되었을 때 복구하는 체크포인트를 설정한다.

    • 단위: 메시지 (Message).

    • 예시: NetBIOS, TLS/SSL(일부 기능).

  6. 표현 계층 (Presentation Layer):

    • 역할: 데이터를 응용 계층이 이해할 수 있는 형식으로 변환하거나 암호화, 압축하는 기능을 담당한다. 즉, 데이터의 형식을 정의하여 통신하는 양쪽이 같은 형식으로 데이터를 주고받을 수 있게 한다.

    • 단위: 메시지 (Message).

    • 예시: JPEG, MPEG, ASCII, SSL/TLS(일부 기능).

  7. 응용 계층 (Application Layer):

    • 역할: 사용자가 직접 상호작용하는 최종적인 응용 프로그램들이 네트워크에 접근할 수 있도록 서비스를 제공하는 최상위 계층이다.

    • 단위: 메시지 (Message).

    • 예시: HTTP, FTP, SMTP, SSH.

OSI 7계층은 이론적인 모델이지만, 실제 인터넷 통신에서는 TCP/IP 모델을 더 많이 사용한다. TCP/IP는 OSI 7계층을 4개의 계층으로 단순화한 실용적인 모델로, OSI의 세션, 표현, 응용 계층을 응용 계층으로 통합하고, 데이터 링크와 물리 계층을 네트워크 액세스 계층으로 통합한다.


2. 데이터 전송의 두 얼굴: TCP와 UDP

전송 계층의 대표적인 프로토콜인 **TCP(Transmission Control Protocol)**와 **UDP(User Datagram Protocol)**는 각각 다른 철학으로 데이터 전송을 수행한다. 이 둘의 가장 큰 차이는 신뢰성속도이다.

TCP: 신뢰성 있는 전송

TCP는 높은 신뢰성을 보장하는 연결 지향(Connection-Oriented) 프로토콜이다. 마치 등기우편처럼, 받는 사람이 데이터를 제대로 받았는지 확인하는 과정을 거친다.

  1. 3-Way Handshake: 데이터 전송을 시작하기 전, 송신자와 수신자가 3단계에 걸친 통신을 통해 서로 연결을 맺는다.

    • SYN(Synchronize): 송신자가 “연결할게, 준비됐어?”라고 신호를 보낸다.

    • SYN-ACK(Synchronize-Acknowledge): 수신자가 “나도 준비됐어, 알았어”라고 응답한다.

    • ACK(Acknowledge): 송신자가 “응답 고마워, 이제 시작하자”라고 마지막 확인을 보낸다.

  2. 흐름 제어 (Flow Control): 수신자의 처리 속도에 맞춰 송신자가 데이터 전송량을 조절한다. 수신 버퍼의 크기를 ‘윈도우 크기’로 알려주어 너무 많은 데이터를 한꺼번에 보내지 않게 한다. 이는 마치 “나는 한 번에 10개의 소포만 받을 수 있어”라고 알려주는 것과 같다.

  3. 혼잡 제어 (Congestion Control): 네트워크 전체의 혼잡 상태를 파악하여 전송량을 조절한다. 네트워크가 혼잡해 데이터 손실이 발생하면, 전송 속도를 늦춰 병목 현상을 막는다. 마치 “도로가 막히는 것 같으니 속도를 줄여야겠다”라고 판단하는 것과 같다.

  4. 4-Way Handshake: 데이터 전송이 끝난 후, 4단계 통신을 통해 연결을 끊는다.

이러한 복잡한 과정을 거치므로 TCP는 속도가 느리지만, 데이터 손실이나 순서 오류 없이 안전하게 전송해야 하는 서비스에 적합하다. (예: 웹 브라우징, 파일 전송, 이메일)

UDP: 빠르고 효율적인 전송

UDP는 신뢰성을 보장하지 않는 비연결 지향(Connectionless) 프로토콜이다. 마치 일반 우편처럼, 그냥 데이터를 보내고 끝난다. 받는 사람이 제대로 받았는지 확인하지 않기 때문에, 데이터가 손실되거나 순서가 뒤바뀌는 문제가 발생할 수 있다.

하지만 UDP의 가장 큰 장점은 속도이다. 연결을 맺고 끊는 과정, 흐름 제어, 혼잡 제어 과정이 없어 매우 빠르다. 따라서 실시간성이 중요한 서비스에 주로 사용된다.

TCP vs. UDP 비교

구분TCP (Transmission Control Protocol)UDP (User Datagram Protocol)
연결 방식연결 지향 (Connection-Oriented)비연결 지향 (Connectionless)
신뢰성높음 (데이터 전송 보장)낮음 (데이터 전송 보장 안 함)
속도느림빠름
주요 기능흐름 제어, 혼잡 제어, 오류 복구없음
데이터 단위세그먼트 (Segment)데이터그램 (Datagram)
사용 사례웹 서핑, 파일 전송(FTP), 이메일(SMTP)스트리밍(YouTube), 게임, DNS, VoIP

Sheets로 내보내기


3. 모든 기기의 주소: IP와 DNS

IP (Internet Protocol)

네트워크 계층의 핵심 프로토콜인 IP는 인터넷에 연결된 모든 장치에 고유한 주소를 부여하고, 이 주소를 기반으로 데이터를 주고받는 역할을 한다. IP 주소는 마치 인터넷 상의 우편 주소와 같아서, 데이터 패킷이 정확한 목적지로 전달되도록 돕는다.

  • IPv4: 현재 가장 널리 사용되는 IP 주소 체계로, 32비트(8비트씩 4개)로 구성된다. 192.168.0.1과 같은 형식이다. 주소 공간이 고갈되어 새로운 인터넷 장치에 주소를 할당하기 어려운 한계가 있다.

  • IPv6: IPv4의 한계를 극복하기 위해 등장한 차세대 IP 주소 체계로, 128비트로 구성된다. 2001:0db8:85a3:0000:0000:8a2e:0370:7334와 같은 형식으로, 거의 무한에 가까운 주소 공간을 제공한다.

IP는 비연결성비신뢰성의 특징을 가진다.

  • 비연결성: 데이터 패킷을 보낼 때마다 최적의 경로를 그때그때 찾아서 보낸다. 사전에 경로를 확정해놓고 통신하는 TCP와는 다르다.

  • 비신뢰성: 패킷이 제대로 전달되었는지, 순서가 뒤바뀌지는 않았는지 확인하지 않는다. 이 부분은 상위 계층인 TCP가 담당하여 보완한다.

DNS (Domain Name System)

DNS는 사람이 기억하기 어려운 IP 주소를 naver.com과 같이 알기 쉬운 도메인 이름으로 변환해주는 시스템이다. 마치 전화번호부와 같은 역할을 한다.

  1. DNS 질의 과정:

    • 사용자 질의: 사용자가 웹 브라우저에 www.naver.com을 입력한다.

    • 리졸버(Resolver) 요청: 컴퓨터는 이 질의를 ISP(Internet Service Provider)가 관리하는 DNS 리졸버에게 보낸다.

    • 루트 서버(Root Server) 질의: 리졸버는 루트 서버에게 .com에 대한 정보를 질의한다. 전 세계 13개의 루트 서버가 존재한다.

    • TLD 서버(Top-Level Domain Server) 질의: 루트 서버는 .com 도메인을 관리하는 TLD 서버의 주소를 리졸버에게 알려준다.

    • 네이버 서버 질의: 리졸버는 TLD 서버에게 naver.com을 관리하는 서버의 주소를 질의한다.

    • 네이버 IP 주소 획득: 네이버의 DNS 서버는 최종적으로 www.naver.com에 해당하는 IP 주소를 리졸버에게 알려준다.

    • 웹 접속: 리졸버는 사용자의 컴퓨터에 이 IP 주소를 전달하고, 사용자는 해당 IP로 웹사이트에 접속하게 된다.


4. 대규모 트래픽을 위한 기술: 로드밸런서

**로드밸런서(Load Balancer)**는 서버에 들어오는 네트워크 트래픽을 여러 대의 서버에 균등하게 분산시켜주는 시스템이다. 이를 통해 특정 서버에 부하가 집중되는 것을 막고, 서비스의 안정성과 확장성을 높인다. 마치 교통량이 많은 도로의 신호등이나 입체 교차로와 같다.

로드밸런서의 핵심 기능

  1. 부하 분산: 여러 서버에 요청을 골고루 분산하여 서버가 다운되는 것을 방지한다.

  2. 장애 감지: 특정 서버에 문제가 발생하면 해당 서버로 트래픽을 보내지 않아 서비스가 중단되는 것을 막는다.

  3. 세션 유지: 사용자의 요청이 계속 동일한 서버로 연결되도록 하여 세션 정보를 유지하게 돕는다.

L4 로드밸런서와 L7 로드밸런서

로드밸런서는 OSI 7계층 중 어떤 계층의 정보를 기반으로 트래픽을 분산하는지에 따라 L4L7으로 나뉜다.

구분L4 (전송 계층)L7 (응용 계층)
작동 원리TCP/UDP 헤더의 IP 주소와 포트 번호 기반으로 분산HTTP/HTTPS 등 응용 계층의 정보(URL, 헤더 등) 기반
특징- 단순하고 빠름 - 부하 분산만 가능 - 특정 서비스(포트) 단위로만 분산- 스마트하고 정교함 - URL별 트래픽 분산 가능 - SSL/TLS 암호화/복호화 기능 제공
장점- 빠른 처리 속도 - 서버 부하 적음 - 가격 저렴- 세밀한 트래픽 제어 - 디도스(DDoS) 공격 방어 기능 - 서버별 응답 속도 고려 분산
단점- 세부적인 트래픽 제어 불가 - 비정상 트래픽 필터링 불가능- 느린 처리 속도 - 서버 부하 큼 - 가격 비쌈

Sheets로 내보내기

L4 로드밸런서는 주로 IP 주소와 포트 번호만 확인하여 트래픽을 분산하기 때문에 매우 빠르고 효율적이다. 하지만 웹 서비스의 URL이나 쿠키 같은 세부 정보는 알지 못한다.

L7 로드밸런서는 패킷의 내용을 깊이 들여다보므로 URL이나 HTTP 헤더와 같은 정보를 기반으로 트래픽을 분산할 수 있다. 예를 들어, example.com/images로 오는 요청은 이미지 서버로, example.com/api로 오는 요청은 API 서버로 분리하여 보낼 수 있다. 또한, 비정상적인 트래픽을 감지하고 차단하는 기능(디도스 방어)도 제공한다.


이 핸드북을 통해 네트워크의 기본 개념을 이해하는 데 도움이 되었기를 바란다. 네트워크는 끊임없이 진화하는 분야이며, 이 기초 개념들이 더 복잡한 기술을 배우는 데 든든한 발판이 될 것이다. 혹시 TCP의 혼잡 제어나 L7 로드밸런서의 세션 유지 기술에 대해 더 깊이 알고 싶다면 언제든 다시 찾아주기 바란다.

==🌐 네트워크 기본 개념 요약==

1. 📶 OSI 7계층

  • 네트워킹 표준을 7개 층으로 나눈 것
  • 통신 과정 문제 발생 시 빠른 해결 가능

1.1. 7계층 구조

  • ==물리(Physical)==, ==데이터 링크(Data Link)==, ==네트워크(Network)==, ==전송(Transport)==, ==세션(Session)==, ==표현(Presentation)==, ==응용(Application) 계층==
  • 하위 계층부터 상위 계층으로 데이터 전송

1.2. 각 계층 역할

  • ==응용 계층==: 프로그램 인터페이스, 데이터 전송 요청
  • ==표현 계층==: 데이터 형식 정의 (jpg, avi 등)
  • ==세션 계층==: 통신 연결 관리 (1:1, duplex 등)
  • ==전송 계층==: 데이터 전송 및 연결 관리
  • ==네트워크 계층==: IP 주소 기반 경로 설정
  • ==데이터 링크 계층==: 물리적 기기 간 통신
  • ==물리 계층==: 전기적 신호 전송

2. 🚦 TCP vs UDP

  • 전송 프로토콜의 종류

2.1. TCP (Transmission Control Protocol)

  • ==신뢰성 높음 (데이터 전송 보장)==

  • ==속도 느림==

  • 연결 설정 및 해제 과정 필요 (3-way handshake, 4-way handshake)

  • 흐름 제어, 혼잡 제어 기능 제공

    sequenceDiagram
        participant A as Sender
        participant B as Receiver
        A->>B: SYN (연결 요청)
        B->>A: SYN-ACK (요청 수락)
        A->>B: ACK (확인)
    

2.2. UDP (User Datagram Protocol)

  • ==속도 빠름==
  • ==신뢰성 낮음 (데이터 전송 보장 X)==
  • 연결 설정 불필요
  • 스트리밍 서비스에 주로 사용

2.3. 특징 비교

특징TCPUDP
신뢰성높음낮음
속도느림빠름
연결연결 지향비연결 지향
사용 예시파일 전송, 웹 브라우징스트리밍, 온라인 게임
통신 방식1:11:N, N:N

3. 📍 IP (Internet Protocol)

  • 인터넷 프로토콜의 약자
  • 네트워크에서 데이터 주고받는 약속
  • 각 호스트의 주소 (IP Address) 부여
  • 라우터를 통해 경로를 찾아 데이터 전송

3.1. 특징

  • ==비신뢰성==: 데이터 전달 보장 X (ICMP로 보완 가능)
  • ==비연결성==: 경로 미리 설정 X, 매번 최적 경로 탐색

4. 🏠 DNS (Domain Name System)

  • 도메인 주소 (naver.com)를 IP 주소로 변환
  • 사람이 읽기 쉬운 주소를 컴퓨터가 이해할 수 있게 함

4.1. 작동 방식

  1. URL 입력
  2. ISP의 DNS 서버에 요청
  3. 루트 서버 -> 최상위 도메인 서버 순으로 탐색
  4. IP 주소 획득
graph LR
    A[URL 입력] --> B(ISP DNS 서버);
    B --> C(Root DNS 서버);
    C --> D(TLD DNS 서버);
    D --> E(Authoritative DNS 서버);
    E --> F(IP 주소 반환);

5. ⚖️ 로드 밸런서 (Load Balancer)

  • 서버 부하 분산 시스템
  • 서버 과부하 방지 및 안정성 확보

5.1. 종류

  • ==L4 로드 밸런서==: 전송 계층 정보 활용 (IP, Port)
  • ==L7 로드 밸런서==: 응용 계층 정보 활용 (URL)

5.2. L7 로드 밸런서 특징

  • 패킷 내용 분석 가능
  • 디도스 공격 방어 가능

대본

[음악] 안녕하세요 장 모임이나 네 오늘은 네트워크 한번 시작해 볼게요 네트워크 어려운 것은 영어 어려워요 용 어려워서 그 개념이 잘 안와 닫고 뭘 소리 하는지를 잘 몰라 겠어요 그래서 쳐도 네트워크가 처음에 되게 어려웠거든요 네트워크가 또 하다 보면은 어 되기 어려운 개념이 야 이래서 이를 꾸 나를 이해할 수 있어요 예를 들면 은 우리가 휴대폰을 오크가 오토 보내며 는 이게 어떻게 이제 내 친구한테 가는 지를 설명해 가 되게 어렵잖아요 어떤 원리로 게 갈까 근데 그럴 네트워크를 매매는 아 이게 이런식으로 해서 가는구나 가 조금더 이 컴퓨터가 쪽에서 좀 벗어난 것들 이 지 이해를 할 수가 있어요 네 그래서 이제 한번 네트워크 같이 시작해볼게요 4 첫번째는 이제 5일 산실 계층이 요 오 1사 에 실기 층을 간단히 설명하면 은 이 네트워킹에 대한 표준을 7개 층을 나는 거거든요 그러니까 쉽게 말하면 우리가 내가 친구랑 이렇게 카카오톡을 할 때 어떻게 통신이 되는지 감옥 규칙이 있을 거 아니에요 그거를 7개 층을 날 은 거에요 왜 날 왜냐면 뭐 어떤 문제가 생기면 은 거기서 빠르게 해결할 수 있고 그런 여러 가지 점들이 있어요 그래서 그 이후로 꽤 층의 그런 특징들을 각각 한번 살펴볼게요 4 이렇게 514 엑셀 계승을 봤는데요 월산 3계층 은 크게 2 이런식으로 나눔이 돼요 혹시 여기서 정보처리기사 를 따신 분 들은 맛나다고 해서 쓸 거에요 요 회사의 시 계층은 혹 죄송 하지만 외워 주셔야 되요 이것은 백에 많이 나온 거라서 꼭 넣어 주셔야 되요 되 계획에 모르게 시켜준 팁을 알려드리면 이게 물리계층 앞에 쭉 다음에는 b dent spa 거든요 밑에서부터 플레이 여기 5를 생각했어요 돈 여기서 공격하지 마세요 플레이에서 똘 스파 이렇게 보시면 쉽겠죠 압니다 그래서 이렇게 7개 층을 나눠 구요 그러면 각각의 무엇을 하늘 한번 볼게요 자 우리 내가 친구한테 이제 카카오톡을 보내면 어떤 식으로 이루어 진다면 요 이렇게 거쳐서 이제 이제 이동 어려 증거 안태 그 다음에 친구한테 조작을 하면 다시 밑에서부터 올라와 가지고 계신가 될까요 그래서 내가 카톡을 먼저 보내면 우선은 의문 계층에서 응용 계층 은 억 프로그램을 말해요 가 내가 사용하는 그 카카오톡 프로그램 여기서 이제 네트워크 접속하도록 답안 마인 터다 패킷으로 만들어가지고 이제 이걸 전송하려고 싸줘 이렇게 요청으로 하죠 그러면 이제 표현 계층 해서 무슨 역할로 하냐면 이제 그 서로 주고받는 그 인터페이스가 어떤 규칙들을 맞춰 줘요 여기에서 자세한 프로토콜 뭐 jpg op 이제 이런 것들 주로 얘기 하거든요 그가 어떤 기억을 맞춰 준다고 생각하시면 되요 그 다음에 세션 계층에서는 통신을 관리해요 뭐 1대 1로 뭐 듀플렉스 로 연결할 지하 푸디 플렉스 lg 아무튼 통신을 관리 한다고 생각을 하시면 되어 다음에 전송 계층은 어 이제 연결을 한 다음에 데이터를 주고 받는 곳이 5 네트워크 계층은 내가 친구랑 바로 다이렉트로 연결 되어 있지가 않잖아요 그렇기 때문에 억 얘도 이제 중간 만들 찾아가는데 를 이제 주로 하는 곳이 이제 네트워크 계층 이에요 이때 주로 ip 주소가 사용 되구요 그 다음에 데이터 링크 계층 을 음 이 멘트 그 기기들 하나하나에서 어떻게 통신이 이런 지를 알아보는 게 대표 겠지 이구요 그리고 마지막 물리의 증 안 직접 전선으로 이제 전기적 신호가 전달되는 것을 불리게 찐 이라고 해요 2 1 나를 이해하기에는 조금 이해가 안되는 것들이 많아요 좋은 지금 어디가 안 된 것 같았거든요 근데 최대한 자리다 이해를 해 보고 어 자기가 이해하기 쉬운 용어로 정리를 해서 그 안개 하시는걸 추천 드릴께요 아무튼 그래서 5 일산시 계층은 이렇게 7개 층이 있고 이 응용 계측 부터 에서 변환에 따라 친구한테 다시 갈 때는 이렇게 거꾸로 다 조각 라 한다 이렇게 해주시면 되고요 같다 응용 계층 부터 물리 층이 어떤 개념인 지는 알고 계시고 그걸 메워 주셔야 되요 자 그래서 만약에 면접관이 어 5 osi 7계층 이 뭐예요 라고 물어본다면 전 이렇게 대학을 할게요 4 514 의식 1층은 인터넷 환경에서 통신하기 위해 네트워킹에 대한 표준은 7개 초 나눈 것입니다 크게 7개 층이 있는데요 물리 계층 데이터 링크 겠죠 즉 네트워크 겠죠 전송 계측 세상 대추 표현 계층 그리고 응용 계층이 있습니다 이렇게 말하겠어요 네 그러면 다음 넘어갈게요 다음은 tcp udp 에어 tcp 어 1 잎들 간단히 설명하면 은 tcp 는 신뢰성 이 높아 여 신뢰성 이 뭐냐면 엇 애가 전달 했다는게 보장되는 거에요 예를 들면 은 내가 옛날에 뭐 등기우편 이랑 그냥 우편이 있잖아요 내가 우편 했으면 이게 갔는지 안 갔는지 보장이 한데요 상대방의 반양장 반지 4 등기를 쓰면 내가 상대방을 반한 지를 확인할 수가 있어요 못받아서 못 받은 걸 확인할 수가 있구요 이런식으로 이렇게 상대방은 받았는지를 확인하는 건 확인하시는게 신뢰성 이라고 여기서는 표현해요 그래서 tcp 는 신뢰성 이 높아요 하지만 빨 느려요 udp 는 빨라요 근데 신뢰성 이다 자의 보니까 받았는지 안 받았는지 몰라요 이걸 조금만 더 자를 볼게요 자 아까 말한대로 tcp 를 먼저 보면은 tcp 는 어 높은 신뢰성을 고장을 해요 하지만 udp 보다 속도가 좀 떨어진다 그리고 tcp 는 엇 내가 이 데이터를 전송 했다는걸 보자 하기 위해서 어 내가 보내는 사람과 받는 사람 운명이 일어 어떤 연결을 매진 꼭 끄는 과정이 있거든요 이렇게 연결을 맺는 과정을 뭐 내가 너한테 데이터 전송 할 거 있어 서 보내 알았어 이런식으로 이루어져요 이게 이제 3m 의 핸드 시키니까 세 번 왔다갔다 했다 이런식으로 해서 설 연결을 설정 되고요 교육 5 ccp 는 해제는 나 이제 연기가 끊는다 언어 나 데이트 다 보내게 꼭 다 보냈어 너나 끝낸다 이런식으로 이루어져요 그래서 3번이 이렇게 세 번이 아니고 1번이 더 왔다 갔다 해요 그래서 4 뭐니 그래서 이걸 보 & 실기 라구요 그래서 tcp 는 쓰디 오렌지 쉐이킹 과 꼬 & 실 등으로 연결 해제 가 이루어져요 자 다음으로는 이제 어디 c 핑 이제 혼잡 제어와 흐름제어 라는 게 있어요 자 여기 보면 에 흐름 제어와 혼잡 제어와 있죠 흐름 제어는 뭐냐면 내가 보내는 사람이 있고 받는 사람이 있어요 내가 성격이 급해서 막 보내요 그럼 얘는 내가 능력이 안되 받을 능력이 안되는데 이걸 다 보냈는데 어떻게 처리를 해요 그러면 그러다가 내가 받을 수 있는 용량이 넘어가면 나 그것은 이제 더 이상 받을 수도 없고 안 되잖아요 그래서 이 받는 사람의 상황을 인지한 체로 이렇게 적당한 양을 보내 주는 거예요 벨의 넣어서 10개를 보냈어 너 이렇게 보낸다 이런게 가 어 다 내심 5개는 처리 했어 어 국내 5개 2번 에게 이런 식으로 이루어져요 그래서 이게 흐름제어 구요 혼잡 제어 는 어 예를 들어서 데이터가 전송이 제대로 안 됐어요 그러면 데이터가 전송이 안 했다고 이렇게 다시 와여 이런 것들이 우리가 네트워크를 쓰면서 그러니까 인터넷을 쓰면서 하나만 연결되어 있는게 아니잖아요 여러개 연결되어 있을 거에요 여러개가 여러개가 이제 거미줄처럼 연결돼 있는데 그 중에 하나가 어디에 문제가 생기게 되면 은 여기가 이렇게 문제가 생기게 되요 그러면은 이 난리가 나는 거죠 그 때부터는 그 여기 여기서 로운 자가 되고 여기서도 문제가 되고 여기서 문제가 문제가 되고 문제가 되기 때문에 문제가 된다고 다시 또 문장 앞에 문제가 돼 문제가 돼 이런 식으로 다시 또 0 메세지를 보냈고 요 그러면 여기에는 기존의 평소에는 뭐 100개의 어 내 쓰지만 주 받았다고 치마는 먹 청계 망 게 이런 식으로 늘어나는 그러면 이제 그대 쪼까 마비가 되게 되거든요 이런 걸 방지하기 위해서 이 네트워크 안에는 몇 개의 매 쓰지만 지금 돌아다니게 설정 아는게 은 작 제외 그래서 너무 혼잡하지 않게 한다 라는 개념으로 이해해 주시면 될 것 같아요 다음 udp 볼게요 리핑 나왔다 뭐라고 초 비 어 속도가 빠른 배신의 그 완전한 성신을 울까 신뢰성 을 보장하지 않는다고 있죠 자 신뢰성 이라고는 연결을 통해서 알게 되요 그가 내가 너한테 데이터를 보냈는지 안 보냈는지 알 수 있는거는 어예 don't i'll 주소를 알아야 될 거에요 그러니까 내가 보내고 애가 보내야 돼 있기 때문에 그러니까 저희 연결이 이루어져야 해요 근데 udp 는 연결이 이루어지지 않아요 그냥 보내고 끗이 이게 윤 입교 대신에 빠르죠 빠르면 추척 어디에 중요하면 어 그렇게 신뢰성은 중요하지 않은 부분 예를 이면은 우리가 유튜브 라이드 나 아니면 트위치 아프리카 이런걸 본다고 쳐요 그런데 우리가 1 동영상을 보는데 순간 화면이 절반 절반이 꼼 해요 이 껌은 게 순간 화면이 꼬는 것은 그렇게 중요하지 않거든요 왜냐하면 바로 다음 프레임이 와서 다음 화면을 보여 주면 되니까요 그래서 이것은 사실상 중요한 것은 속도 에요 그러니까 얼만큼 빨리 데이터가 와서 그 화면을 제대로 보여준 야 이 일부분이 나간 것들은 그렇게 큰 영향을 끼치지 않는 서비스 되잖아요 그래서 이렇게 속도가 중요한 스트리밍 서브 s 의 주로 사용 돼요 자 다음으로 일대일 일대다 다르다 같네요 자 tcp 같은 경우는 1대 1 만 가능 2 5 udp 는 일대일 일대다 벌리고 다대다 이런식으로 가능해야 자의 것들이 이제 tcp 와 udp 에 특징이에요 자 그러면 정리하자면 아니 면접관이 tc 표 2 피해를 설명해 주세요 라고 하면은 전 이렇게 맑게 요 자 tcp 는 신뢰성 있는 통신을 위해 사용하는 프로토콜로 높은 신뢰성을 보장 하지만 연잎이 보다 속도가 드립니다 쓰리 웨이 보 & 실크로 서버 와 클라이드 가 1대 1로 통신을 하고요 흔 흐름 제어와 혼잡 제어와 이루어지게 됩니다 자담 udp 는 요 없 이연걸 0 프로토콜로 손상된 데이터에서 재전송 아기 않아요 배신은 신뢰성이 낮지만 otc 보다 속도가 빨라서 스트리밍 같은 서비스의 주로 사용됩니다 그리고 마지막으로 일대일 땐 n dm 으로 연결이 가능합니다 라고 대답을 하겠어요 자 다음은 이제 ip 볼게요 자 ip 는 뭐의 약자인가요 우리 ip 어드레스 많이 들어보셨죠 4 ip 는 뭐야 짜면 인터넷 프로토콜 a 학자의 요 자 여기서 잠깐만 어플로 토크에 대해 설명을 하자면 그것도 걸 어떤 귀하기 라고 많이 하잖아요 프로토콜을 자세히 얘기를 하려면 되게 어려워 지니까 그냥 어떤 약속 약속 이럼 이해하세요 열리며 는 뭐 데이턴 다 모인 0 0 1 0 뭐 1 0 2 널 지우려 해 줄 거 아니에요 이걸 만약에 점 txt 로 열면 은 관 이렇게 열리고 그러니 이것을 뭐 hwp 로 열면 은 루머 폐 이런 식을 올릴 수도 있잖아요 어떻게 오랜만에 저희 글자 아무튼 이런식으로 이 어떤 데이터를 어떻게 읽고 곰과 이런 확장자 도 하나의 프로토콜 이놈 이거든요 아무튼 어떤 귀하기 다 어떻게 억 통신을 할 지에 대한 통신도 되고 아무튼 어떤 약속 이라고 생각하시면 되요 그럼 이만 쉽게 슨 생각하며 는 인터넷에서 데이터 주고 받는 약속 땅이라고 4 드시면 되요 자 그럼 ipl 조금 더 자세히 볼게요 내 ip 는 이제 이런 네트워크 에서 이런 컴퓨터 않아 들을 코스트 라구요 그럼 호스트 들 내가 통신을 하려고 하면 이 삶이 어디 있는지를 알아야 될 거 아니에요 아까 내가 어디로 보냈는지 나라의 거기 역할을 ip 어드레스가 해주고요 실제로 자세히 보면은 내가 친구한테 데 이들 보낼 때 이 이렇게 바로 가지 않고요 중간에 라우터 라는 그 중간 점들이 엄청 많이 있어요 그래서 일로 갔다가 얘는 이한테 물어봐요 어디로 r 쨈 알렌이 그러면 열기로 와 이게 여기도 여기로 가 어디도 여기로 가 이렇게 해서 전송되어 실제로 이런 식으로 이제 라우터를 통해서 알피 주드 를 통해서 데이터를 전달하는 게 제 ipa 잠 ip 는 두 가지 특징을 가지고 있는데요 뭐 첫번째는 b 역 신뢰성 이에요 그러니까 b 신뢰성 이란 것은 이제 내가 전달하는 것을 완전히 전달 다른걸 보장 하지 않아요 지금까 제대로 갔는지 부정하지 않죠 그리고 아까 이제 윤리 피란 이제 비슷하죠 그 대신에 내가 너한테 완전히 갔는지 보장을 하고 싶을 때 어떤 어떻게 하냐면 이제 icmp 라는 프로토콜을 또 삶이요 인터넷 컨트롤 멧세지 풀오토 그래서 만약에 전송 제대로 안 쓰면 은 어여 기오르 나서 다시 보내 줘 라고 사용할 수 있어요 이런식으로 b 신뢰 서 있어 있구요 단비 연결성이 에요 b0 결성은 어 아까 내가 친구가 틀 데이터를 보낼때 여러 경로가 있을 수 있다고 했었잖아요 근데 이런 경우를 어이 경로를 미리 저장해 두지 않는다는 얘기에요 그래서 그때 그때 이제 전날 해주는게 이제 b 연결성이 에요 그래서 대신에 이름 어떤 문제가 했냐면 여기까지 금 끙 깨어 있어도 내가 지금 연결이 개의치 않기 때문에 그냥 파로호 내 버리는 거에요 그래서 경우 전달이나 천송이 안 되겠죠 굉장히 이렇게 연결을 두지 않는 단계 b 연결성이 에요 그래서 정리를 하자면 만약에 연역 반이 ip 가 뭐에요 라고 물어본다면 저는 ip 는 인터넷 프로토콜의 약자로 인터넷 망을 통해 패킷을 전달하는 프로토콜입니다 b0 결성과 b 신뢰성의 특징을 가지는 되요 b0 결성은 100개를 보내는 길을 정하지 않는 것이고 b 신뢰성은 패킷의 완전한 전달을 보장하지 않는 것입니다 라고 대답을 하겠어요 4 다음으로 dns 볼게요 dns 는 도메인 주소를 ip 로 변환해주는 시스템은 되어 어 내가 네이버 닷컴을 쳐요 그러면 이건 컴퓨터에서 어떻게 한다고 알고 계세요 자목 172 2.16 8.5 이런식으로 ip 주소로 변환 된다고 하죠 이렇게 변환해 주는 것을 dns 라고 해요 자 실증 잡으로 어떻게 작동이 되냐면 저거 내가 내가 이 쓴다 내가 네이버나 껌을 쳐요 그러면은 어 근데 않은 이제 컴퓨터 메우는 통신 나가 있을 거 아니야 내 컴퓨터에 연결된 통신 타 거기를 isp 라고 하거든요 그래서 isp 에 이제 dns 해석기 가다 를 가지고 있어요 dns 를 해주면서 내가 네이버 라고 치면 은 이 isp 에서 관리하는 dns 에서 끼 뭐 kt 나 머시 u+ 나 이런 식으로 하서 이 네이버에 대한 주소를 ip 주소를 가지고 돌아오고 이제 나는 이 주소로 연결을 하게 되는 거죠 작품 쪼끔만 자 사이 몰게 어떤식으로 이루어지는지 내 여기가 이제 dns 가 어떻게 움직이는 지를 잘 설명할 그림인데요 예를 들면 데이 뭐 같 컴을 치면 요 제 www 쵸 이 제일 뒤에서 부터 시작을 해요 베컴의 들어가서 이 컴에서 관리하는 것 중에 네이버를 찾아요 자 보면은 여기 루트 먼저 들어와서 컴에서 네이버를 찾게 되는 거에요 예를 들면 은 못된 abc 쩌억 co.kr 이라고 하며 는 kr 들어왔다가 kr 에서 ceo 들을 가는거 찾고 co 에서 abc 들어가는것 잘랐어요 그래서 보면은 cr 들어왔다가 c5 들어왔다가 이제 뭐 어디 찾아 들어가겠죠 이런 식으로 이루어 지게 되요 그래서 이제 잠시 정리를 하자면 제가 아빠의 면접관이 dns 에서 dns 가 뭔지를 물어보면 저는 어 dns 는 도메인 주도 를 알 비추도록 * 해주는 시스템입니다 dns 는 당 어 같은 어 순서로 작동을 하게 되는데요 뭐 첫 번째 url 을 입력하면 isp 가 관리하는 dns 해석기 의 요청을 라우팅 시킵니다 그다음 에디의 넷에서 께 루트 서버에 그 탐 레벨에서 벌을 주조를 요청 하고요 그 다음에 탕 레벨 세컨드 레벨 3 커널에 의해서 서프 t 인해서 뭐 이렇게 해서 최종적으로 rp 주소를 얻게 됩니다 이렇게 말하겠어요 자만 다음으로 이제 로드 밸런서 넌 로드 밸런서 인데요 룰을 은서를 이제 서버에 부하를 분산시켜 주는 시스템이라고 보시면 되요 자 예를 들면 은 내가 네이버에 회사에 다녀요 주 처 네이버에 다 있는데 5 내 우리 서버가 나와있어요 자 이렇게 해서 누가 모험 1동 이라 검색하면 은 폭로했던 결과를 알려 주겠죠 근데 만약에 여기가 단선 됐어요 어떤 나쁜 사람이 여기에 끊고 봤어요 자 그러면 이 네이버는 작동이 안되겠죠 네이버는 뭐 1초에 오며 더 몇천만 뭐 이런식으로 돈을 벌 거 아니에요 거나 큰 회사 니까 근데 이거 하나 떨어졌다고 그렇게 많은 돈이 나가는 것은 너무 큰 손해 잖아요 그렇기 때문에 좀 안정한 되게 위해서 몇 여러 개의 서버를 깨끗하구요 여러분 써볼 그래서 왜 끊었어요 그러면 여기서 및 헤어 며 이 끊었어 며 회사는 되요 이런식으로 그래서 요청이 들어오면 홍길동은 좀 홍길동 을 검색해 줘 사용자가 그러면 처음에 여기에서 엉덩 검색해서 결과 알려주고 뭐 다음에는 뭐 개발자 장 후보를 검색해 요 그럼 여기서 검색해서 여기 알려주고 이런식으로 작동 하는게 늘 매너 쓰구요 요 가운데 있는 애가 로드 밸런서 요 이렇게 해서 이 여러개의 서버를 얼 로드를 분산시켜 주는 시스템이다 라고 이 해주시면 되요 자 그럼 조금 더 자세히 볼게요 자 루드 불러서는 그게 이 두가지 마시면 되요 alo n7 자 이 보아 세븐 이 뭐냐면 어 아따 551 싸인 실제 층에서 pd nt spa 라고 했죠 여기가 전사 계층이 구요 여기가 신계 칭 이거는 전송 계층 이거는 응용 계층 그래서 매일 보는 2 내가 데이터를 받아서 2 전송 계층 까지만 데이터를 열어보고 이제 분산을 해주는 거에요 그리고 7계층 은 이 끝까지 다 열어 봐서 순산을 해줘요 밑에를 보면은 사회 엘보우 로드밸런싱 은 이제 뭐 ip 맥주소 맥 주소는 2 계층 이고 이제 각 기기마다 가지고 있어요 자 맥 주소를 rpg 를 간단히 설명드리면 은 어 다 내가 네트워크 기기 듯 그러니까 못 핸드폰 뭐 노트북 이런 네트워크가 된 기기들은 다 고유의 맥 주소를 가지고 있어요 이것은 변화 지가 않아요 근데 이걸 인터넷에 연결하면 내 위치를 알려주는 ip 저서가 생겨요 그리고 이거는 어날 수 있어요 4 그리고 이제 포트는 내가 어떤 업무용 프로그램의 내가 왜 서버를 만들 때 어떤 포트로 들어오면 이 서버로 들어오게 이 프로그램으로 들어오게 입력을 해줄 수 있는게 못해요 그래서 이건 같다 이제 층 정보 이구요 이건 3개층 정보 이건 4개 층 정보에요 아무튼 그래서 이 사회 엘보우 리듬 엘런 씽 은 이 정보들을 가지고 이 로드 밸런서 에서 이제 이렇게 분산을 해주는 거죠 자 그럼 다음은 a7 응용 계층 이라 봤잖아요 이거는 전부 다 알고 있어요 그래서 내가 5 그 아까 말고 말한 말씀드린 그 7계층 의 정보를 모두 다 알고 있어서 그 정보를 가지고 로드를 분산 해요 그래서 뭐 여기 같은건 ur 열기와 놓고 하는데 모바일로 같은 경우는 201 회 분산을 하고 봐 이 같은 경우는 203 으로 김탄을 하는 거죠 이런식으로 어 각 몇 개 층에서 정보를 열어서 그 등산을 하나를 가지고 엘보 a7 으로 나뉜다 이렇게 이해하시면 되겠어요 자 근데 이거는 l7 같은 경우 중심 이라는 게 답해 캐서 여러 보아서 확인을 하거든요 그래서 이제 딛 옷을 방어할 수가 있어요 디도스 가 뭐냐면 이제 계속 정 각해서 요청을 보내는 거예요 예를 들면 에 어 지금 어 1 쪽에서 이제 1 채널 mid 비디오를 1줄 먹었음 이걸 해외 속살을 고층 거래요 그럼 어떤 사람이 발생 되려면 어 내가 이제 유튜브 서버에 지금 요청을 보내서 25개 강릉 거란 말이죠 근데 계속 웹 볼만 이에 계속 할 거에요 계속 가서 그럼 이게 요안 아마 여러 명의 이런식으로 하면 은 갑자기 과 엄마가 걸릴 거 아니에요 그러면은 서버 가 머 와 예로 가 날 수도 있고 암튼 뭐 꺼질 수도 있고 이게 디도스 공격 이거든요 계속 요청을 보내는 공격이 이것들을 뭐 필터링 에서 막을 수 있는 것 예를 들면 에 뭐 이쪽 e 사용자는 계속 이렇게 하는 것이 의심 되니까 이제 더이상 요청을 받아 주지 바라고 이런 식으로요 그래서 디도스 같은 비정상적인 트래픽을 막을 수가 있어요 아무튼 정리하자면 만약에 어 면접관이 로드 밸런서 거냐고 물어보는 전 이렇게 되다 볼게요 로드 올라서는 서버에 부하를 분산시켜 주는 시스템입니다 크게 엘보우 로드 밸런서 s7 롯뜨 밸런서 가 있는데요 엘보 로드 불러서는 4개 층 이하의 정보를 가지고 그들을 분산 해줍니다 특히 맥주소 에비 주소 포트 정보를 가지고 즉 트래픽을 분산 해주고요 n7 로드 밸런서 는 응용 계층의 정보를 가지고 정보를 분산 해줘요 어페어 킹 을 확인하고 분산해서 디도스 같은 이제 비정상적인 플픽 또 이제 필터링할 수 있습니다 이렇게 대답을 하겠어요 4 이렇게 네토 그 5개를 아름 하는데요 어데 또 그 어떠세요 조금 어렵지 않으세요 이 처음 마음에는 어 개념이 조금 용어들이 어려워 가지고 어려우실 것 같아요 그래도 이제 쪽 계속 참고 공부를 해 주셔야 1씩 뭐 어떻게 알겠어요 그리고 어 네트워크 같은 경우에 용어 돔 어려우니까 계속하다 그런게 용어가 이해가 안되는게 있을 수도 있어요 그런것들은 개도 이 알이 오도록 하지 마시고 그냥 어 패스 하고 넘어가세요 그리고 그 용어를 최대는 안 뜨는 걸로 내 답변을 준비하세요 왜냐면은 지금 여러번 봤는데도 이해가 안가는건 은 나중에 p 매는 또 이해가 안갈 거에요 저도 마찬가지구요 운 그렇기 때문에 어 너무 쉽게 나는 필요없다 적당히 리가 답변을 할 준비 만 하면 평 가 항 용어가 좀 어렵다면 따른 용어를 가지고 설명을 하면 된다 라고 말씀 드릴께요 네 그러면 이렇게 네트워크는 여기까지 한테 없이 진행했으면 댓글 남겨주세요 안녕