본문 바로가기
컴퓨터 네트워크 정리

컴퓨터 네트워크 정리

by recoraddic 2024. 11. 23.

1. 계층

데이터를 효율적이고 체계적으로 전송하기 위한 구조로 대표적으로

  1.  OSI 7 계층
  2.  TCP/IP 4 계층

2종류의 계층 비교

2. OSI 7 계층

위에 그림에서도 알 수 있듯이 7개의 층이 있고 각 층에는 이름과 역할이 각각 부여되어있다.

그것에 대해서 한번 알아보겠다.

1 계층 Physical Layer

Physical Layer에서는 단순하게 1과0만을 사용하여 데이터를 받고 전달하는 역할만을 한다. 

전기적 , 기계적 , 기능적인 특성을 활용하여 통신케이블로 데이터를 전송

 

2 계층 DataLink Layer

물리계층을 통해 송수신되는 정보의 오류와 흐름을 관리하여 안전한 정보의 전달을 수행한다

Mac 주소를 가지고 통신을 하며 기본적인 통신 단위는 프레임단위이다

더보기

MAC주소

컴퓨터 스마트폰이 네트워크를 통해 통신할 때 사용하는 장치의 고유한 식별번호

네트워크에서 정보를 보낼 때 정확한 목적지를 정할 수 있게 도와준다

여기서 궁금할 수 있는게 MAC주소IP주소의 차이??

MAC주소는 장치에 고정된 하드웨어적 주소

IP주소는 네트워크에서 사용가능한 변경가능한 주소

주요특징으로는

  1. point to point -> 물리계층에 직접 연결된 두 장치 간의 통신을 관리
  2. CRC 기반 오류 제어한다
  3. 물리 계층에서 발생할 수 있는 데이터 전송 오류를 감지하여 수정하거나 요청 재전송

3 계층 Network Layer

이 계층의 핵심은 데이터를 어떻게 보낼지 경로를 정하고 데이터를 안전하게 보내는 것이다

주요 기능으로는 라우팅 , 주소지정 이다

 

  • 라우팅 (Routing)
    • 데이터를 목적지까지 전달하기 위해 최적의 경로를 결정합니다.
    • 라우터와 같은 네트워크 장비는 이 계층에서 동작하며, 경로를 설정합니다.
    • 경로 선택 알고리즘:
      • 고정 경로 (Static Routing): 미리 설정된 경로 사용.
      • 동적 경로 (Dynamic Routing): 네트워크 상태에 따라 경로를 실시간으로 선택.
  • 주소 지정 (Addressing)
    • 네트워크 계층은 각 장치를 식별하기 위해 IP 주소를 사용합니다.
    • 데이터를 전송하기 위해 송신지 주소와 목적지 주소를 포함합니다.
  • 패킷 전달 (Packet Forwarding)
    • 데이터를 **패킷(Packet)**으로 나누어 전송합니다.
    • 각 패킷에는 송신지 주소, 목적지 주소, 데이터가 포함됩니다.
    • 목적지 주소를 기준으로 패킷을 네트워크를 통해 전달합니다.

여기서 헷갈릴 수 있기 때문에 잡고 가야하는게 IP주소Mac주소의 차이다.

둘다 주소를 나타내지만 비유해서 설명하자면 데이터를 전송할 때 다른 네트워크로 전송해야하니 네트워크 주소제공을 해주는건   IP주소이다. 그리고 그 네트워크에서 하드웨어 주소를 결정해 주는건 Mac주소이다.

 

4 계층 Transport Layer

이 계층의 핵심은 데이터를 신뢰성 있게 송신자에서 수신자까지 전달하는 역할
엔드 투 엔드(end-to-end) 데이터 전송을 보장하고, 데이터의 분할, 재조립, 오류 복구, 흐름 제어와 같은 기능을 수행한다.

주요역할로는

 

  • 데이터의 분할과 재조립
    • 데이터를 작은 조각(세그먼트)으로 나누어 전송하고, 수신 측에서 다시 원래의 데이터로 조립합니다.
  • 신뢰성 있는 데이터 전송
    • 전송 중 손실되거나 손상된 데이터에 대한 오류 제어재전송을 통해 신뢰성을 보장합니다.
  • 흐름 제어 (Flow Control)
    • 송신자가 데이터를 너무 빠르게 보내지 않도록 조절하여, 수신자가 데이터를 처리할 수 있는 속도에 맞춥니다.
  • 다중화 (Multiplexing)와 역다중화 (Demultiplexing)
    • 여러 애플리케이션이 동일한 네트워크를 사용할 때, 포트 번호를 이용해 데이터가 어느 애플리케이션으로 가야 하는지 구분합니다.
  • 엔드 투 엔드 통신 제공
    • 전송 계층은 송신자와 수신자 간의 논리적인 연결을 설정하고 유지합니다.

사용되는 주요 프로토콜로는

 

  • TCP (Transmission Control Protocol)
    • 연결 기반 프로토콜로, 신뢰성 있는 데이터 전송 보장.
    • 특징:
      • 연결 설정(3-way handshake)과 연결 종료(4-way handshake).
      • 오류 제어, 흐름 제어 제공
더보기
3-way handshake
송신자와 수신자가 서로 준비상태인지 확인하고 신뢰성있는 연결함

SYN(연결요청 : 연결해도 되??) -->SYN-ACK(수신자가 이거 너 맞지? 어 연결해) -->ACK(송신자가 연결 시작할께)
  • 사용 예: HTTP, FTP, 이메일(SMTP).
  • UDP (User Datagram Protocol)
    • 비연결성 프로토콜로, 빠르고 간단한 데이터 전송 제공.
    • 특징:
      • 오류 제어나 순서 보장이 없음.
      • 헤더가 작아 데이터 전송 속도가 빠름.
    • 사용 예: 동영상 스트리밍, 온라인 게임, DNS.

5 계층 Session Layer

5 계층은 통화세션을 관리하는 관리자 역할이다. 대화의 시작과 끝을 책임지는 역할이다

4계층이랑 비슷한거 아닌가 하고 생각할 수도 있지만

 

4계층은 데이터를 어떻게 하면 정확하게 보낼까? vs 5계층은 데이터를 보내는 대화가 잘 유지되고 있나?

 

주요 역할로는

  1. 세션 설정 및 동기화
    • 이미 4계층에서 연결된TCP를 바탕으로 대화 규칙을 정하는 것이 세션 설정이다 
    • 데이터를 주고받는 방식, 프로토콜, 동기화 방식등의 규칙을 정한다
    • 세션이 유지되는 동안 **동기화(Synchronization)**를 통해 데이터가 끊기거나 손실되지 않도록 관리합니다.
    • 통신 중 장애가 발생하면, **체크포인트(Checkpoints)**를 기반으로 세션을 복구할 수 있습니다.
  2. 세션 종료 (Terminating Sessions)
    • 데이터 전송이 끝난 후 통신 연결을 안전하게 종료합니다.
  3. 다중 세션 관리 (Multiple Session Management)
    • 여러 애플리케이션이 동시에 작동할 경우, 각 세션을 독립적으로 관리합니다.
    • 예: 비디오 통화 중 음성 데이터와 영상 데이터를 별도로 처리.
  4. 데이터 흐름 관리 (Dialogue Control)
    • 대화가 **반이중(Half-duplex)**인지, **전이중(Full-duplex)**인지 결정.
    • 반이중: 한 번에 한 방향으로만 데이터 전송.
    • 전이중: 양방향 동시 데이터 전송.

6 계층 Presentation Layer

송신자가 전송한 데이터를 수신자가 이해할 수 있는 공통 형식으로 변환하고, 데이터를 애플리케이션 계층으로 전달

(약간 느낌이 여기서부터는 머리층이라고 생각하면 될거 같다. 밑에서는 약간 데이터를 보내기 위한 명령 수행의 느낌)

주요 역할로는

 

  • 데이터 번역 (Translation)
    • 서로 다른 시스템 간의 데이터 형식을 통일합니다.
    • 송신자와 수신자가 동일한 형식으로 데이터를 처리할 수 있도록 변환합니다.
    • : ASCII ↔ Unicode, 텍스트 ↔ 바이너리.
  • 데이터 암호화 및 복호화 (Encryption/Decryption)
    • 데이터를 안전하게 전송하기 위해 암호화하고, 수신 측에서 이를 복호화합니다.
    • 송신자 입장에서는 6계층에서 암호화하고 이걸 5,4,3,2,1계층을 통해 전송하고
      수신자는 암호화된 데이터가 1,2,3,4,5계층을 통해 전달되어서 6계층에서 복호화하는것이다
  • 데이터 압축 및 해제 (Compression/Decompression)
    • 데이터 전송 효율성을 높이기 위해 데이터를 압축하고, 수신 측에서 이를 해제합니다.
    • : ZIP, JPEG 압축.
  • 문자열 변환
    • 서로 다른 문자 인코딩 체계를 사용하는 시스템 간 데이터 변환.
    • : UTF-8 ↔ UTF-16.

7 계층 Presentation Layer

드디어 마지막 7계층이다. 사용자가 직접 접하는 계층으로 사용자와 네트워크 사이의 인터페이스를 제공\

이거는 예시를 통해서 보는게 편할 거 같아서 예시를 들자면

 

  • 웹사이트 접속:
    • 사용자가 **브라우저(HTTP)**로 요청 → 네트워크를 통해 데이터 반환 → 브라우저에 표시.
  • 파일 다운로드:
    • FTP를 통해 서버에서 파일 요청 → 데이터를 받아 사용자에게 전달.
  • DNS
    • DNS는 사람이 읽을 수 있는 도메인 이름을 IP주소 변경

 

여기는 중요한게 프로토콜이다

진짜 중요한게 HTTP인데 이건 추후에 설명하도록 하겠다

 

 

 

 

 

'컴퓨터 네트워크 정리' 카테고리의 다른 글

컴퓨터 네트워크 - 자율주행 관련  (0) 2024.11.23
TCP/IP 5계층 - 응용계층  (0) 2024.11.23