m1ndy5's coding blog

네트워크 기초(정의 & OSI 7 계층) 본문

클라우드 with AWS/Network

네트워크 기초(정의 & OSI 7 계층)

정민됴 2023. 3. 3. 23:51

네트워크란?

  • 컴퓨터 간 통신 기술을 이용하여 파일 공유를 가능하게 해주는 그물망처럼 연결된 통신 이용 형태

    LAN

  • 조직 내부나 동일 건물 등 비교적 좁은 지역을 연결하는 네트워크
  • 공유기나 스위치를 이용해서 연결함
  • 처음 구성할 때의 비용, 전기세 빼고는 유지보수 비용이 들진 않음
  • 이더넷이라는 프로토콜을 주로 사용
  • WAN에 비해 빠름

    WAN

  • LAN과 LAN을 잇는 광범위한 지역 단위로 구성하는 네트워크
  • 초기 설치 비용은 적게 들지만 유지 비용이 많이 듦
  • ISP(Internet Service Provider)에서 관리를 하기 때문에 관리가 용이함
  • 속도 LAN에 비해 느림

    Internet이란?

  • 전세계적으로 LAN과 WAN이 얽혀있는 네트워크

    Protocol이란?

  • 컴퓨터나 네트워크 장비가 서로 통신하기 위해 미리 정해놓은 모든 논리적/물리적 규칙
  • 인터넷 표준 프로토콜 : TCP/IP
  • TCP/IP를 사용하는 모든 장치들은 반드시 IP 주소가 할당되어 있어야 함

    OSI 7 계층

  • ISO(국제표준화기구)에서 internetworking에 사용하기 위한 목적의 연구로 만들어진 모델
  • 근데 연구하는 동안 이미 TCP/IP가 인터넷 표준 프로토콜이 되버림
  • OSI는 실제 프로토콜로 구현된 경우는 거의 없고, 연구용/학습용/개발 목적의 'Reference(참조) Model'로 활용되고 있음
  • 위 사진으로 볼 수 있듯이 tcp/ip에서는 5,6,7계층을 나눌 수 있는 뚜렷한 기준은 없고 묶어서 애플리케이션 계층으로 부른다.

    1Layer : Physical Layer

  • 통신 케이블로 데이터를 전송하는 물리적인 계층
  • 전기 신호(0,1)로 변환해서 데이터를 주고 받음 (Line Coding)
  • 전송되는 단위 : 비트
  • ex) 통신케이블, 리피터, 허브 등

    2Layer : DataLink Layer

  • 통신의 흐름을 관리
  • 전송되는 단위 : 프레임 (L2 헤더 + L3 헤더 + L4 헤더 + Data + FCS)
  • 프레임에 물리적 주소(MAC 주소)를 부여하고 에러검출, 재전송, 흐름제어를 함
  • ex) 스위치, 이더넷(LAN 구간 프로토콜은 MAC 주소를 사용) 등
  • 맥주소란?*
  • LAN 구간 프로토콜에서 사용되는 물리적 주소
  • 이더넷 방식의 어댑터에는 고유한 MAC 주소가 할당되어 있음
  • ex) PC의 랜카드, 라우터의 이더넷 인터페이스 등
  • 장비를 생산하는 회사에서 MAC 주소를 부여함
  • 48bit의 이진수로 구성되어 있음 사람이 관리하기 편하도록 12자리의 16진수로 표현
  • 48bit의 이진수 중 앞의 24bit는 해당 장치를 생산한 회사의 고유 ID(OUI)를 의미하고 뒤의 24bit는 해당 장치만의 고유 ID(Host ID)를 의미

    3Layer : Network Layer

  • 논리적 주소를 사용하여 데이터를 목적지까지 안전하고 빠르게 전달
  • 라우터를 통해 목적지 IP와 라우팅 테이블을 비교하여 최적 경로로 전송하는 역할을 함 -> 라우팅 -> 이때 ip헤더 붙음
  • 전송되는 단위 : 패킷 (L3헤더 + L4헤더 + Data)
  • ex) 라우터 / L3 스위치

    4Layer : Transport Layer

  • 포트 번호와 전송방식(TCP/UDP)를 결정함
  • 간단하게 TCP는 신뢰성이 있고 UDP에 비해 느리고 연결이 되어있어야만 데이터를 보냄(연결지향성), UDP는 신뢰성이 떨어지는 대신 TCP보다 빠르고 연결이 되어있지 않아도 데이터를 보내는 (비연결지향성) 특징이 있다.
  • 포트번호 범위 : 0 ~ 65535
    • Well-known : 0 ~ 1023 -> 대표적인 예로 SSH 22, HTTP 80, HTTPS 443, DNS 53 등이 있다.
    • Registered : 1024 ~ 49151 -> 대표적인 예로 3306 MYSQL 등이 있다.
    • Dynamic : 49152 ~ 65535 -> 출발지 포트를 설정할 때 보통 dynamic 포트를 사용한다.
  • TCP헤더가 붙으면 Segment, UDP헤더가 붙으면 Datagram이라고 한다.
  • ex) L4 Switch(로드밸런서)

    TCP/IP와 OSI모델

  • 실제로 사용하는건 TCP/IP이고 OSI 모델을 보면 더 자세히 설명이 가능한 관계라고 생각하면 된다.
  • osi 5, 6, 7계층이 TCP/IP의 애플리케이션 계층이라고 표현되는 거처럼 계층에 걸쳐있을 수 있다.

    그 외 Route53과 관련된 질문

  • 인스턴스에 53포트를 열어주는 인바운드 규칙을 추가한적이 없는데 왜 매핑이 되는지?
    • 사용자가 도메인을 입력 -> route53에서 그 도메인과 연결된 ip를 넘겨줌 -> 사용자가 그 ip를 받아서 웹서버에 접근

'클라우드 with AWS > Network' 카테고리의 다른 글

URL vs URI vs URN  (0) 2023.06.23
네트워크 진단 도구  (0) 2023.03.12
TCP VS UDP, 그 외의 다양한 네트워크 프로토콜  (1) 2023.03.12
ABOUT ROUTING, NAT  (0) 2023.03.05
ABOUT IP, SUBNET  (0) 2023.03.05