독학/[책] 네트워크

[혼공학습단 12기 혼공네트🌐] 혼자 공부하는 네트워크 week1

최연재 2024. 7. 1. 14:44

✏️기본 미션

OSI 모델 및 TCP/IP 모델 차이점을 정리하고, 이를 바탕으로 네트워크 계층 구조를 작성해 보기(p. 62 참조)

 
차이점
- OSI 모델은 네트워크를  이론적으로, TCP/IP 모델은 구현 측면에서 바라본 모델입니다. 각각에 대한 더욱 자세한 내용은 아래 내용 정리에서 확인하실 수 있습니다.

 

✏️선택 미션

Ch.01(01-1) 확인 문제 2번(p.35), (01-3) 확인 문제 2번(p.73) 풀고 설명하기

 
Ch.01(01-1) 확인 문제 2번(p.35)

1번 -> 도움을 준다.
2번 -> 4개의 계층



 


📜내용 정리

Chap01. 컴퓨터 네트워크 시작하기

1.1 컴퓨터네트워크를 알아야 하는 이유

1) 네트워크의 네트워크, 인터넷

- 컴퓨터 네트워크 : 여러 장치가 연결되어 정보를 주고받을 수 있는 통신망
- 인터넷 : 네트워크를 연결한 네트워크의 네트워크
 

2) 개발자가 컴퓨터 네트워크를 알아야 하는 이유

: 프로그램을 만들고, 유지보수하는 업무에서 네트워크 지식을 활용하기 때문.
 
 

1.2 네트워크 거시적으로 살펴보기

1) 네트워크의 기본 구조

- 그래프의 형태

  • 노드 (정보를 주고받을 수 있는 장치)
  • 노드를 연결하는 간선 (유무선의 통신 장치)
  • 노드 간 주고받는 메시지

- 호스트(host) == 종단 시스템 (end system)
: 네트워크의 가장자리에 위치한 노드 (최초 생성/송신, 최종적 수신) 

  • 서버 : 서비스를 제공하는 호스트
  • 클라이언트 : 서버에게 서비스를 요청(request)하고, 서버의 응답(response)을 제공받는 호스트

- 네트워크 장비
: 네트워크의 가장자리에 위치하지 않은 노드
 
- 통신 매체
: 각 노드를 연결하는 간선 (유선 매체, 무선 매체)
 
- 메시지
: 통신 매체로 연결된 노드가 주고받는 정보
 

2) 범위에 따른 네트워크 구분

- LAN (Local Area Network) : 가꺄운 지역을 연결한 근거리 통신망
- CAN (Campus Area Network) :학교 또는 회사의 여러 건물 단위로 연결되는 규모의 네트워크
- MAN (Metropolitan Area Network) : 도시나 대도시 단위로 연결되는 규모의 네트워크
- WAN (Wide Area Network) : 먼 지역을 연결한 광역망 통신망

  • LAN을 연결한다.
  • ISP(Internet Service Provider) 가 구축하고 관리

 

3) 메시지 교환 방식에 따른 네트워크 분류

(1) 회선 교환 방식
- 메시지 전송로인 회선을 설정하고 이를 통해 메시지를 주고받는다.
- 호스트들이 메시지를 주고받기 전에 두 호스트를 연결한 후, 연결된 경로로 메시지를 주고받는다.
- 주어진 시간동안 전송되는 정보의 양이 비교적 일정하다.
- 회선 스위치 : 호스트 사이의 일대일 전송로를 확보하는 네트워크 장비
- 회선의 이용 효율이 낮을 수 있다.
 
(2) 패킷 교환 방식
- 회선 교환 방식의 문제 해결 -> 현재 주로 사용
- 메시지를 패킷(packet)이라는 단위로 쪼개 전송한다.
- 메시지를 송수신하는 두 호스트가 하나의 전송 경로를 점유하지 않아서 네트워크 이용 효율이 높다.
- 패킷 스위치는 패킷이 수신지까지 올바르게 도착할 수 있도록 최적의 경로를 결정하거나 패킷의 송수신지를 식별한다.
ex) 라우터(router), 스위치(switch)
- 페이로드(payload) : 패킷을 통해 전송하고자 하는 데이터
- 패킷의 앞에는 헤더(header), 패킷의 뒤에는 트레일러(trailer)라는 정보가 포함되기도 한다.
 
 

1.3 네트워크 미시적으로 살펴보기

1) 프로토콜 (protocol)

- 노드 간에 정보를 올바르게 주고받기 위해 합의된 규칙이나 방법
- 예시 : IP, ARP, HTTPS, HTTP, TCP, UDP 등
 

2) 네트워크 참조 모델 (network reference model) == 네트워크 계층 모델

- 통신 과정을 계층으로 나눈 이유

  • 네트워크 구성과 설계가 용이하다.
  • 네트워크 문제 진단과 해결이 용이하다.

3) OSI 모델

- 국제 표준화 기구(ISO)에서 만든 네트워크 참조 모델
- 네트워크를 이론적으로 기술하고 이해할 때 사용
 
1️⃣ 물리 계층 (pysical layer)

  • OSI 모델의 최하단에 있는 계층
  • 1과 0으로 표현되는 비트 신호를 주고받는 계층
  • 가장 근원적인 통신이 이루어진다.

2️⃣ 데이터 링크 계층 (data link layer)

  • 네트워크 내 주변 장치 간의 정보를 올바르게 주고받기 위한 계층
  • LAN 기술을 확인할 수 있고, MAC  주소 체계로 네트워크 내 송수신지를 특정할 수 있다.
  • 물리 계층을 통해 주고받는 정보에 오류가 없는지 확인한다.

3️⃣ 네트워크 계층 (network layer) 

  • 메시지를 다른 네트워크에 속한 수신지까지 전달하는 계층
  • 네트워크 간의 통신이 이루어지며, 인터넷을 가능하게 하는 계층
  • IP 주소 체계를 통해 통신하고자 하는 수신지 호스트와 네트워크를 식별하고, 수신지 도달을 위한 최적의 경로를 설정한다.

4️⃣ 전송 계층 (transport layer) 

  • 신뢰성 있고, 안정성 있는 전송을 위해 필요한 계층
  • 패킷의 흐름을 제어하거나 전송 오류를 점검해 신뢰성 있고 안정적인 전송이 어루어지게 한다.
  • 포트라는 정보를 통해 실행 중인 응용 프로그램의 식별이 이루어지기도 한다.

5️⃣ 세션 계층 (session layer)

  • 세션을 관리하기 위해 존재하는 계층
  • 세션 : 통신을 주고받는 호스트의 응용 프로그램 간 연결 상태
  • 연결 상태를 생성, 유지, 끊는 역할을 한다.

6️⃣ 표현 계층 (presentation layer)

  • 사람이 이해할 수 있는 언어를 컴퓨터가 이해할 수 있는 코드로 변환
  • 압축, 암호화 작업 수행

7️⃣ 응용 계층 (application layer)

  • OSI 참조 모델 최상단에 있는 계층
  • 사용자 및 사용자가 이용하는 응용 프로그램과 가장 밀접히 닿아있는 계층
  • 사용자가 이용할 응용 프로그램에서 다양한 네트워크 서비스를 제공한다.

 

4) TCP/IP 모델

- 구현에 중점을 둔 네트워크 참조 모델
- TCP/IP 4계층, 인터넷 프로토콜 스위트(internet protocol suite), TCP/IP 프로토콜 스택(protocol stack)이라고도 부른다.
-  프로토콜 스위트, 프로토콜 스택 : 다양한 계층의 프로토콜 집합
 
1️⃣ 네트워크 액세스 계층 (network access layer)

  • 링크 계층(link layer), 네트워크 인터페이스 계층(network interface layer)라고도 한다.
  • OSI 모델의 데이터 링크 계층과 유사

2️⃣ 인터넷 계층 (internet layer)

    • OSI 모델의 네트워크 계층과 유사

3️⃣ 전송 계층 (transport layer) 

  • OSI 모델의 전송 계층과 유사

4️⃣  응용 계층 (application layer)

  • OSI 모델의 세션 계층  + 표현 계층 + 응용 계층과 유사

 

5) 캡슐화와 역캡슐화

- 패킷은 송신 과정에서 캡슐화, 수신 과정에서 역캡술화가 이루어진다.
- 캡슐화(encapsulation) : 송신 과정에서 헤더와 트레일러를 추가해나가는 과정
- 역캡슐화(decapsulation) :수신 과정에서 송신 과정에서 붙였던 헤더와 트레일러를 각 계층에서 확인하고 제거한다.
 

6)PDU (Protocol Data Unit)

- 각 계층에서 송수신되는 메시지의 단위
- 상위 계층에서 전달받은 데이터에 현재 게층의 프로토콜 헤더 및 트레일러를 추가하면 현재 계층의 PDU가 된다.

OSI 계층PDU
응용 계층데이터(data)
표현 계층
세션 계층
전송 계층세그먼트 (segment, TCP 프로토콜이 사용된 경우)
데이터그램 (datagram, UDP 프로토콜이 사용된 경우)
네트워크 계층패킷 (packet)
데이터 링크 계층프레임 (frame)
물리 계층비트(bit)

 
 

🤔느낀 점

자바, 컴퓨터구조+운영체제를 거쳐 3번째 혼공학습단 활동은 네트워크로 진행하게 되었습니다! 이번 겨울에 혼공네트 베타리딩을 했었고 다음 학기에 네트워크를 수강할 예정이라 예습+복습이 모두 가능한 6주가 될 것 같습니다.
 
무더운 날씨 다들 파이팅입니다!