[개발자가 알아야 할 네트워크 기초] TCP/IP 개요

SungBum Park·2022년 7월 27일
0

OSI 7 계층을 처음부터 공부하는 것은 추천하지 않는다. 웹 개발자라면, TCP/IP, HTTP 부터 정확히 파악하는게 중요하다.

  • TCP/IP 모델은 OSI 7 계층 또는 DoD 모델의 구현체이다.
    • 구체적인 순서: TCP/IP Model(가장 구체적) > Dod Model > OSI 7 Layers
  • 프로세스는 TCP의 데이터를 소켓 형태로 접근할 수 있다.
    • 여기서, 소켓은 User Application와 TCP가 서로 접근할 수 있도록 파일 형태로 추상화한 것이다.
  • 식별자
    • Access Layer: MAC 주소(L2) → NIC(LAN 카드)에 대한 식별자
      • NIC이 2개가 있는 경우(일반적으로 유선, 무선 랜 카드), MAC 주소도 2개가 된다.
      • MAC 주소는 하드웨어 주소라고도 하며, 변경 가능하다.
    • Network Layer: IP 주소 → Host에 대한 식별자
      • Host 란? 인터넷에 연결된 컴퓨터
      • 한 컴퓨터(정확히는 NIC)에서 Host는 n 개가 될 수 있다.
    • Transport Layer: Port 번호 → 계층마다 인식하는 식별자가 다를 수 있다.
      • User mode: Process 식별자?
      • Kernel mode: Service 식별자? (Ex, HTTP)
      • H/W: Interface 식별자? (Ex, 공유기의 유선 랜)

Host, Switch, Network

  • Host: 네트워크에 연결된 컴퓨터
  • Host 구분
    • 네트워크 자체 → Switch
      • Router, F/W(방화벽), IPS, …
      • 목적에 따라 스위칭
        • 경로 설정 ⇒ 라우터
        • 보안 ⇒ 방화벽, IPS
      • 계층에 따른 스위칭
        • MAC 주소로 스위칭 ⇒ L2 스위치
        • IP 주소로 스위칭 ⇒ L3 스위치 (Ex, 라우터)
        • Port 번호로 스위칭 ⇒ L4 스위치
        • HTTP 관련 스위칭 ⇒ L7 스위치
        • 계층이 높을수록 가격이 비싼 스위치
    • 네트워크 이용주체 → Endpoint (단말)
      • peer, server, client, …
  • Network
    • 가장 대표적인 예가 Internet.
    • Internet ⇒ Router + DNS 집합체

참고자료

profile
https://parker1609.github.io/ 블로그 이전

0개의 댓글