[혼공네트] 4주차 학습 내용

모자른 주니어개발자·2025년 2월 8일
0

CS

목록 보기
4/5

학습 내용


04-1 전송개층 개요: IP의 한계와 포트

  • 전송 계층
    • 네트워크 계층과 응용 계층 사이에 위치함
    • 신뢰할 수 있는 연결형 통신이 가능한 프로토콜을 제공하기에 네트워크 계층의 한계 보완 가능
    • 포트를 통해 응용 계층의 애플리케이션을 식별함으로써 응용 계층과의 연결 다리 역할을 수행함
  • 신뢰할 수 없는 통신: 특성은 패킷이 수신지까지 제대로 전송되었다는 보장을 하지 않는 특성
  • 비연결형 통신: 송수신 호스트 간에 사전 연결 수립 작업을 거치지 않는 통신 특성
  • 포트: 응용 계층의 애플리케이션 프로세스를 식별하는 정보
    • 잘 알려진 포트, 등록된 포트, 동적 포트가 존재
  • NAT: IP 주소를 변환하는 기술
  • NAPT: 포트 기반에 NAT
    • NAT 테이블에 변환될 IP 주소 쌍과 더불어 포트 번호도 함께 기록함

04-2 TCP와 UDP

  • MSS: TCP로 전송 가능한 최대 페이로드 크기
  • TCP 세그먼트: 송신지 포트와 수신지 포트, 순서 번호, 확인 응답 번호, 제어 비트, 윈도우 등의 필드가 있음
  • 순서 번호: TCP 세그먼트의 순서를 나타내기 위한 정보
  • 확인 응답 번호: 수신 호스트가 다음으로 받기를 희망하는 순서 번호
  • TCP는 쓰리 웨이 핸드셰이크로 연결을 수립함
  • TCP: CLOSED, ESTABLISHED, LISTEN 등 다양한 상태를 통해 현재 어떤 통신 과정에 있는지를 나타내는 상태 유지(stateful) 프로토콜
  • UDP: 비연결형 통신을 수행하는 신뢰할 수 없는 프로토콜
    • 스테이트리스 프로토콜
  • UDP 데이터그램: 송신지 포트와 수신지 포트, UDP 길이, 체크섬 필드가 있음

04-3 TCP의 오류 흐름 혼잡 제어

  • RTT: 송신 호스트가 세그먼트를 전송한 뒤 그에 대한 답변을 받는 데 까지 걸리는 시간을 의미
  • ARQ: TCP의 재전송 기법으로, 수신 호스트의 답변(ACK)과 타임아웃 발생을 토대로 문제를 진단하고 문제가 생긴 메시지를 재전송함으로써 신뢰성을 확보하는 방식
  • 오류 제어 재전송 기법: Stop-and-Wait ARQ, Go-Back-N ARQ, Selective Repeat ARQ
  • 흐름 제어: 수신자의 처리 속도를 고려하며 전송하는 방식으로 TCP에서는 슬라이딩 윈도우를 사용
  • 혼잡 제어: 네트워크의 혼잡도를 판단하고 혼잡한 정도에 따라 전송량을 조절하는 방식으로 느린 시작, 혼잡 회피, 빠른 회복 등의 알고리즘을 사용

숙제


Ch.04(04-1) 확인 문제 1번(p.206)

문제: IP와 연결된 통신 특성으로 알맞은 단어를 골라보세요.

답: 비신뢰성, 비연결형

Ch.04(04-2) 확인 문제 2번(p.225) 풀고 설명하기

문제: 다음은 TCP 쓰리 웨이 핸드셰이크 과정을 나타내는 그림입니다 괄호 안에 들어갈 말을 골라보세요.

답: SYN

설명: 쓰리 웨이 핸드 셰이크
1. 송신 호스트에서 수신 호스트로 SYN을 보냄
2. 수신 호스트는 SYN을 받았다는 ACK와 SYN을 보냄
3. 송신 호스트에서 알겠다는 의미에 ACK를 보냄

4주차 회고


이번주 공부는 상당히 에러인 상황이다.. 설연휴에 연차까지 몰아쓰고 여행도 다녀오고 아주 알차게 노느라 공부를 거의 못했다.

거기다가 리눅스 마스터 1급 시험일정이 다가오고 있다는 사실을 망각하고..스프링, 자바, 네트워크, 리마 1급 공부를 동시에 해야만하는 상황이 발생해버렸다...

그래서 네트워크 공부를 하는데 조금 시간이 걸렸다. 다음주는 시간 배분을 조금 더 고민해서 해봐야할 것 같다.

공부 내용을 조금 더 알차게 쓰기 위해서 노력해야겠다.

profile
스프링 백엔드와 Swift iOS 개발을 함께 공부하는 개발자

0개의 댓글

관련 채용 정보