728x90
반응형

01-1 컴퓨터 네트워크를 알아야 하는 이유

  • 네트워크의 네트워크, 인터넷
    • 전 세계의 컴퓨터들이 서로 연결되어 통신할 수 있는 거대한 네트워크
    • TCP/IP 프로토콜을 기반으로 한 통신망
    • 정보 공유와 통신을 가능하게 하는 핵심 인프라
  • 개발자가 컴퓨터 네트워크를 알아야 하는 이유
    • 프로그램을 만드는 업무에서 네트워크 지식을 활용하는 경우
      • 웹 애플리케이션 개발
      • API 통신 구현
      • 데이터베이스 연동
      • 분산 시스템 구축
    • 프로그램을 유지 보수하는 업무에서 네트워크 지식을 활용하는 경우
      • 성능 최적화
      • 네트워크 오류 디버깅
      • 보안 취약점 분석
      • 트래픽 모니터링

01-2 네트워크 거시적으로 살펴보기

  • 네트워크의 기본 구조
    1. 호스트 (Host):
      • 설명: 네트워크에 연결된 모든 컴퓨터 장치를 의미합니다. 주로 서버와 클라이언트
      • 서버: 데이터를 저장하고 네트워크를 통해 다른 컴퓨터에 서비스나 자원을 제공하는 컴퓨터. 예를 들어, 웹 서버는 웹 페이지를 호스팅하고, 파일 서버는 파일을 저장합니다.
      • 클라이언트: 서버의 자원을 사용하거나 서비스를 요청하는 컴퓨터. 일반 사용자들이 사용하는 PC, 스마트폰 등이 여기에 해당됩니다.
    2. 네트워크 장비 (Network Devices):
      • 라우터 (Router): 서로 다른 네트워크 간의 데이터 패킷을 전달하고, 최적의 경로를 찾아주는 장치. 인터넷 연결을 가능하게 합니다.
      • 스위치 (Switch): 네트워크 내의 여러 장치를 연결하고, 데이터 패킷을 올바른 목적지로 전송합니다. LAN(Local Area Network)에서 주로 사용됩니다.
      • 허브 (Hub): 네트워크 장치들을 연결하는 기본 장치로, 데이터를 모든 포트로 전송하여 네트워크 트래픽이 많아질 수 있습니다. 스위치보다 비효율적입니다.
    3. 통신 매체 (Transmission Medium):
      • 유선 (Wired):
        • 이더넷 케이블 (Ethernet Cable): 가장 일반적인 유선 네트워크 매체로, 데이터를 전기 신호를 통해 전송합니다. 안정적이고 빠른 속도를 제공합니다.
        • 광섬유 케이블 (Fiber Optic Cable): 빛을 통해 데이터를 전송하며, 매우 빠른 속도와 긴 전송 거리를 제공합니다.
      • 무선 (Wireless):
        • Wi-Fi: 무선 네트워크 기술로, 라우터를 통해 무선 신호를 전송하여 장치들이 네트워크에 연결됩니다. 케이블 없이도 편리하게 사용 가능합니다.
        • Bluetooth: 단거리 무선 통신 기술로, 주로 주변기기 연결에 사용됩니다.
    4. 메시지 (Message):
      • 설명: 네트워크에서 전송되는 데이터 단위입니다. 패킷이라는 작은 단위로 쪼개져 전송되며, 최종적으로 재조합되어 사용자에게 전달됩니다.
      • 패킷 (Packet): 데이터가 전송되는 기본 단위로, 헤더와 페이로드로 구성됩니다. 헤더는 목적지와 출발지 주소를 포함하고, 페이로드는 실제 전송 데이터입니다.
      • 프레임 (Frame): 패킷을 포함한 데이터 링크 계층에서의 데이터 단위로, 물리적 네트워크에서 전송됩니다.
  • 범위에 따른 네트워크 분류
    • 설명: LAN은 물리적으로 가까운 위치에 있는 컴퓨터와 장치들이 연결된 네트워크입니다. 보통 한 건물 내 혹은 근처 여러 건물로 이루어진 작은 지역을 커버합니다.
    • 특징:
      • 한정된 공간: 학교, 사무실, 공장, 또는 캠퍼스와 같은 작은 지리적 범위에서 사용됩니다.
      • 높은 속도: 네트워크 속도가 매우 빠르며, 일반적으로 1Gbps 또는 그 이상의 속도를 지원합니다.
      • 낮은 오류율: 신호의 전송 거리가 짧고, 데이터 손실이 적습니다.
    • 예시: 학교 네트워크, 회사 내부 네트워크, 집안의 Wi-Fi 네트워크.
    WAN (Wide Area Network: 광역 통신망)
    • 설명: WAN은 넓은 지리적 범위에 걸쳐 있는 네트워크로, 서로 떨어진 위치에 있는 여러 LAN을 연결합니다. 이 네트워크는 전 세계에 걸쳐 있을 수 있습니다.
    • 특징:
      • 넓은 지역: 국가나 대륙을 포함하는 넓은 범위에서 사용됩니다.
      • 인터넷 연결: 인터넷 서비스 제공업체(ISP)를 통해 네트워크를 연결합니다. WAN은 다양한 통신 기술을 사용하여 데이터를 전송합니다.
      • 속도와 신뢰성: WAN의 속도는 ISP와 사용 기술에 따라 다르며, 신뢰성을 보장하기 위해 다양한 프로토콜을 사용합니다.
    • 예시: 인터넷, 기업의 국제 네트워크, 대규모 통신망.
  • LAN (Local Area Network: 근거리 통신망)
  • 메시지 교환 방식에 따른 네트워크 분류
    1. 회선 교환 방식 (Circuit Switching):
      • 설명: 통신을 시작하기 전에 두 지점 사이에 전용 통신 경로를 설정합니다. 이 경로는 통신이 끝날 때까지 유지되며, 다른 통신이 동일한 경로를 사용할 수 없습니다.
      • 특징: 고정 대역폭을 보장하고, 실시간 통신에 적합합니다. 예를 들어, 전화망이 대표적입니다.
      • 장점: 전용 경로로 인해 안정적인 연결과 낮은 지연 시간.
      • 단점: 비효율적 자원 사용, 사용되지 않는 동안에도 경로가 점유됨.
    2. 패킷 교환 방식 (Packet Switching):
      • 설명: 데이터를 작은 단위인 패킷으로 나누어 전송합니다. 각 패킷은 독립적으로 목적지로 전송되며, 최종 목적지에서 다시 조립됩니다.
      • 특징: 네트워크 자원을 효율적으로 사용하며, 각 패킷이 독립적인 경로로 전송될 수 있습니다. 인터넷이 대표적인 예입니다.
      • 장점: 효율적인 대역폭 사용, 동적 라우팅으로 안정성 증가.
      • 단점: 지연이 발생할 수 있으며, 실시간 통신에는 덜 적합할 수 있음.
  • 주소와 송수신지 유형에 따른 전송 방식
    1. 유니캐스트 (Unicast):
      • 설명: 1대1 통신 방식으로, 하나의 송신자가 하나의 수신자에게 데이터를 전송합니다.
      • 특징: 대부분의 일반적인 인터넷 통신 (예: 웹 브라우징, 이메일 등)이 유니캐스트 방식입니다.
      • 장점: 정확하고 개인화된 데이터 전송.
      • 단점: 많은 수신자에게 데이터를 전송할 때 비효율적.
    2. 브로드캐스트 (Broadcast):
      • 설명: 1대 다수 통신 방식으로, 하나의 송신자가 네트워크에 연결된 모든 장치에 데이터를 전송합니다.
      • 특징: 주로 로컬 네트워크(LAN)에서 사용됩니다. 모든 장치가 데이터를 수신합니다.
      • 장점: 네트워크의 모든 장치에게 동시에 정보를 전달.
      • 단점: 네트워크 트래픽 증가 및 효율성 저하.
    3. 멀티캐스트 (Multicast):
      • 설명: 1대 그룹 통신 방식으로, 하나의 송신자가 특정 그룹의 장치에만 데이터를 전송합니다.
      • 특징: 실시간 스트리밍, 온라인 회의 등에서 자주 사용됩니다.
      • 장점: 특정 그룹의 수신자들에게만 데이터를 전송하여 대역폭을 절약.
      • 단점: 네트워크와 장치의 멀티캐스트 지원 필요.

01-3 네트워크 미시적으로 살펴보기

  • 프로토콜: 네트워크 통신 규칙
  • 네트워크 참조 모델
    • OSI 모델
      • 7계층 구조
        • 물리 계층: 실제 물리적 연결을 담당.
        • 데이터 링크 계층: 데이터 프레임 전송 및 오류 검사.
        • 네트워크 계층: 패킷 전달 및 라우팅.
        • 전송 계층: 데이터 전송 신뢰성 보장.
        • 세션 계층: 통신 세션 관리.
        • 표현 계층: 데이터 변환 및 암호화.
        • 응용 계층: 사용자 애플리케이션과의 인터페이스.
    • TCP/IP 모델
      • 네트워크 인터페이스 계층: 데이터 링크 및 물리 계층 기능.
      • 인터넷 계층: 패킷 전달 및 라우팅.
      • 전송 계층: 데이터 전송 신뢰성 보장.
      • 응용 계층: 사용자 애플리케이션과의 인터페이스.
      • 실제 인터넷에서 사용되는 표준 모델로, 네트워크 통신을 효율적으로 수행
      • 참고링크: https://pyoja.tistory.com/261
  • 캡슐화와 역캡슐화
    1. 캡슐화: 데이터가 상위 계층에서 하위 계층으로 전달될 때, 각 계층은 데이터에 특정 헤더를 추가해요. 예를 들어, 응용 계층에서 생성된 데이터는 전송 계층으로 전달되며, 전송 계층은 데이터에 세그먼트 헤더를 추가합니다.
    2. 역캡슐화: 데이터가 하위 계층에서 상위 계층으로 전달될 때, 각 계층은 헤더를 제거해요. 예를 들어, 데이터 링크 계층에서 받은 프레임은 네트워크 계층으로 전달되며, 네트워크 계층은 프레임 헤더를 제거하고 패킷을 처리합니다.
  • PDU: 각 계층별 데이터 단위를 의미
    • 응용 계층: 메시지
    • 전송 계층: 세그먼트
    • 네트워크 계층: 패킷
    • 데이터 링크 계층: 프레임
  • 트래픽과 네트워크 성능 지표
    1. 처리율 (Throughput):
      • 설명: 단위 시간당 실제로 전송되는 데이터양.
      • 측정 단위: bps (bits per second).
      • 의미: 네트워크의 실질적인 성능 지표.
    2. 대역폭 (Bandwidth):
      • 설명: 네트워크에서 최대로 전송할 수 있는 데이터의 양.
      • 의미: 네트워크의 이론적인 최대 전송 용량.
      • 특징: 실제 처리율은 대역폭보다 작음.
    3. 패킷 손실 (Packet Loss):
      • 설명: 네트워크에서 전송 중 손실되는 패킷의 비율.
      • 원인: 네트워크 혼잡, 하드웨어 문제 등.
      • 영향: QoS(서비스 품질)에 영향을 미치는 중요 요소.

 

 

 

 

728x90
반응형

+ Recent posts