[CS 면접 지식 - Network] 물리 계층

2025. 1. 24. 12:07·면접 준비/Network
728x90
반응형
SMALL

물리 계층과 데이터 링크 계층

데이터 통신의 최초 시작 지점이다. 이더넷, 이더넷 프레임, 통신 매체, 네트워크 장비에 대해 알아보겠다.

이더넷

물리 계층과 데이터 링크 계층에는 LAN 내의 호스트들이 올바르게 정보를 주고 받을수 있게 해주는 기술들이 존재하며, 그 중 대표적인 기술 하나가 이더넷이다.
이더넷은 IEEE 802.3 이라는 이름으로 국제 표준화된 기술이다.
이더넷 표준에는 여러가지가 존재하지만 이걸 모두 알아야할 필요는 없으며 오늘날 LAN 대부분이 이더넷 표준을 따른다 이 정도만 알면 도니다.

이더넷 프레임

이더넷 기반의 네트워크에서 주고받는 프레임을 말한다.
내부 구조로는 프리앰블, 수신지 MAC Address, 송신지 Mac Address, 타입/길이, 데이터, FCS로 이루어져 있다.

프리앰블

송수신지 동기화를 위해 사용되는 8바이트 크기의 정보이다. 수신지 입장에서는 이 프리앰블 바이트를 통해 이더넷 프레임이 수신되고 있다는 사실을 확인한다.

송수신지 MAC 주소

MAC주소는 프레임에서 가장 중요한 물리적 주소이다. 네트워크 인터페이스마다 하나씩 부여되는 주소이며, NIC라는 장치가 네트워크 인터페이스를 담당한다.
하나의 호스트는 여러개의 네트워크 인터페이스를 가질수도 있다.

타입/길이

이 필드에 명시된 크기가 1500 이하이면 이 필드는 프레임의 크기를 나타내고, 1536이상이면 타입을 나타낸다.
타입은 캡슐화된 상위 계층의 정보를 의미하기 때문에 타입을 통해 어떤 상위 계층 프로토콜이 캡슐화 되어 있는지 알 수 있다.
예를들어 IPv4는 16진수 0800, ARP는 0806과 같이 명시된다.

데이터

이전에 보았던 페이로드가 여기에 담기며 상위 계층으로 전달하거나 전달받은 데이터가 여기에 들어있다.
데이터는 최대 1500바이트 이하로 제한되어 있으며, 이보다 큰 데이터를 보내게되면 패킷이 여러개로 나뉘어 보내진다.
네트워크 계층 패킷(헤더 + 페이로드)의 최대 크기라고 생각해두면 되겠다. 이 크기를 MTU라고 부른다.

FCS

이 곳은 트레일러라고 부르는 부분이다. 프레임의 오류가 있는지 확인하는 필드로 CRC(Cyclic Redundancy Check)라는 오류 검출용 값이 명시된다.
송신지에 전송할 데이터와 더불어 전송하 ㄹ데이터에 대한 CRC 값을 보내면 수신지에서는 전달받은 데이터에 대한 CRC값을 계산해, 그 값을 전달받은 CRC값과 대조한다.

네트워크 인터페이스 :NIC

네트워크 인터페이스란 네트워크 상에서 노드와 통신 매체가 연결되는 지점을 말한다. 네트워크 인터페이스는 위에서 말했듯이 MAC 주소가 부여되며, NIC라는 하드웨어가 네트워크 인터페이스 역할을 담당한다.
NIC는 네트워크 인터페이스 카드, 네트워크 어댑터, LAN 카드, 이더넷 카드 등 다양하게 불린다.
통신 매체의 신호를 호스트가 이해하는 프레임으로 변환하거나, 호스트가 이해하는 프레임을 반대로 통신 매체의 신호로 변환하는 역할을 수행한다.
MAC주소를 기반으로 잘못 전송된 패킷이 없는지 확인하는 작업도 수행한다.

허브와 스위치

허브보다 대부분 스위치를 많이 사용하지만 허브를 통해 전이중/반이중 통신, 브로드캐스트 통신의 특징을 잘 살펴볼 수 있다.

허브

허브는 물리 게층의 대표적인 장비이며, 여러 대의 호스트를 연결할 수 있다.
리피터 허브, 이더넷 허브로 불리기도 한다. 통신 매체를 연결하는 지점은 포트라고 하며 케이블의 커넥트를 꽂는 부분이다.
허브의 주요 특징중 하나로는 전달받은 신호를 모든 포트로 내보내는 점(브로드 캐스트), 반이중 모드로 통신한다는 점이다.

반이중 통신이란 송신 또는 수신을 동시에 하지 못하는 상태를 말한다. 한쪽이 통신하면 상대받은 끝날때까지 기다렸다가 종료되면 통신을 할 수 있다.
전이중 통신은 송신 중에도 수신이 가능한 상태를 말한다. 데이터 링크 계층의 네트워크 장비 스위치는 전이중 모드를 지원한다.

허브는 반이중 모드로 통신을 하기 때문에 만약 동시에 메세지를 보내면 충돌이 발생한다. 이때 충돌이 발생할 수 있는 영역을 콜리전 도메인이라고 부른다.

스위치

스위치는 허브의 한계를 보완하기 위해 만들어낸 장비이다. 스위치는 허브와 달리 목적지 호스트가 연결된 포트로만 전송하고, 전이중 모드를 지원하므로 콜리전 도메인이 비교적 좁다.
데이터 링크 계층에서 사용하기 때문에 L2 스위치라고도 부른다. 스위치가 전달받은 신호를 목적지에만 전달할 수 있는 이유는 MAC 주소 학습기능이 있기 때문이다.
스위치는 프레임 내부에 있는 MAC주소를 확인할 수 있기 때문에 포트, MAC 주소를 테이블의 형태로 메모리에 저장한다. 이 정보를 MAC 주소 테이블 이라고 한다.

그 이외에 VLAN 이라는 가상의 LAN을 만들 수 있는 기능이 존재한다.
같은 스위치에 연결된 모든 호스트를 하나의 네트워크로 간주하고 싶지 않을 때, 논리적으로 분리할 수 있다.

728x90
반응형
SMALL

'면접 준비 > Network' 카테고리의 다른 글

[CS 면접 지식 - Network] 전송 계층  (0) 2025.01.24
[CS 면접 지식 - Network] 네트워크 계층  (0) 2025.01.24
'면접 준비/Network' 카테고리의 다른 글
  • [CS 면접 지식 - Network] 전송 계층
  • [CS 면접 지식 - Network] 네트워크 계층
공부하고 기억하는 공간
공부하고 기억하는 공간
IT 비전공자로 시작하여 훌륭한 개발자가 되기 위해 공부하고 있는 공간입니다. 틀린 내용이나 부족한 부분이 있으면 댓글로 알려주세요 바로 수정하겠습니다.
    250x250
  • 공부하고 기억하는 공간
    IT - railroad
    공부하고 기억하는 공간
  • 전체
    오늘
    어제
    • 분류 전체보기 (314) N
      • 면접 준비 (36) N
        • OS (6)
        • Spring Security (0)
        • Java (2) N
        • DB (9)
        • Network (3)
      • ElasticSearch (2)
      • Kafka (4)
      • Spring (22)
        • Spring Cloud (7)
        • Security6 (5)
        • JPA (12)
        • 프로젝트 리팩토링 회고록 (4)
        • Logging (8)
        • Batch (2)
      • Redis (17)
        • Redis 개념 (8)
        • Redis 채팅 (5)
        • Redis 읽기쓰기 전략 (1)
      • AWS (11)
      • 리눅스 (29)
        • 리눅스 마스터 2급 (5)
        • 네트워크(기초) (7)
        • 리눅스의 이해 (6)
        • 리눅스의 설치 (2)
        • 리눅스 운영 및 관리 (6)
      • JAVA-기초 (16)
        • JAVA기본 (11)
        • Design Pattern (5)
      • JSP (27)
        • JSP 기본 개념 (10)
        • JSP (1)
      • SQL (1)
      • TIL (36)
      • 문제 풀이 (2)
        • Programmers (9)
        • 백준 문제풀이 (28)
      • JavaScript (10)
      • HTML (17)
      • Ngrinder (1)
        • Ngrinder 문서 정리 (1)
  • 블로그 메뉴

    • 링크

    • 공지사항

    • 인기 글

    • 태그

      자바 알고리즘
      프로그래머스
      JS
      Spring Data Redis
      Springframework
      redis
      백준
      자바 반복문
      java
      리눅스마스터2급정리
      자바 면접질문
      자바 면접
      spring redis
      JavaScript
      레디스
      스프링프레임워크
      리눅스
      리눅스마스터2급
      redis 채팅
      jsp request
      CSS
      자바스크립트
      Spring
      springsecurity
      자바기초
      JSP
      HTML
      자바
      Til
      jsp기초
    • 최근 댓글

    • 최근 글

    • hELLO· Designed By정상우.v4.10.3
    공부하고 기억하는 공간
    [CS 면접 지식 - Network] 물리 계층
    상단으로

    티스토리툴바