[CN[2]]링크계층2

이유정·2025년 2월 6일
0

컴퓨터네트워크

목록 보기
41/41

링크계층

  1. error detection & correction
  2. 채널 공유

채널 공유

  • 주파수 분할 (FDMA)

  • 시 분할 (TDMA)

  • 코드 분할 (CDMA)

  • ~DMA: Division Multiple Access


우리는 원래 burst 통신을 한다. (확 땡겨씀)

  • 단점: burst 통신이 쉽지 않다.
    • <=> Carrier Sense Multiple Access(CSMA)
    • : Carrier를 아무도 쓰지 않을 때 통신. burst 통신에 적합하다는 뜻.
    • 문제) 충돌
    • 해결책) 무작위의 시간과 기다림
      • 충돌이 잦으면, 무작위의 window 시간을 늘린다 (0초~3초 => 0초~5초)
  • 절충안: 토큰 방식
    • 토큰을 갖고 있다면 말할(?) 수 있고, 더이상 이야기 하지 않는다면 토큰을 돌리는 방식이다. 따라서 충돌을 방지한다.
  • 링 형태로 연결된 네트워크에서 하나의 토큰을 이용해 데이터 전송을 제어한다.
  • 토큰이 왔을 때, 할 얘기가 없으면 그냥 토큰을 넘기고, 할 얘기가 있다면 토큰에 붙여서 넘기면 되는 간단한 방식이면서 고속 통신이였음.

옛날 dummy Hub vs 현재 switching Hub

    • dummy hub는 단순히 받은 신호를 네트워크의 모든 포트에 브로드캐스트하는 역할
    • switching hub는 데이터 패킷을 목적지 MAC 주소 기반으로 전송
    • 각 포트가 독립된 통신 채널을 가지며, 다른 장치의 트래픽에 영향받지 않음
    • Full-Duplex 지원 : 송신과 수신을 동시에 수행 가능

1)FDMA:

  • 주파수를 나눠쓰는 방식
  • Guard band: 서로 다른 주파수 채널 간 간섭을 방지하기 위해 확보하는 보호 구간

2)TDMA:

  • Guard Time이 필요하다: TDMA는 하나의 주파수를 여러 사용자가 시간적으로 나눠서 사용하는 방식이다. 각 사용자는 정해진 시간 슬롯에서만 데이터를 전송한다.
    그런데, 송신자가 멀리있는지, 가까이 있는지에 따라 전파 도착시간이 다르다. 이 시간 차이를 고려하지 않으면 먼 사람의 데이터가 늦게 도착하면서 다른 사용자의 데이터와 겹쳐 충돌이 발생할 수 있다.
    그래서 Guard Time을 둬야함.
  • 같은 주파수와 시간을 줬을 때, 한명이 쓰는 것보다 훨씬 손해본다의 의미
    : 만약 한명이 독점적으로 주파수를 쓴다면 Guard Time이 필요 없겠지만, 여러 명이 TDMA 방식으로 나눠쓰면 각 슬롯마다 Guard Time을 확보해야 해서 실제로 쓸 수 있는 데이터 전송 시간이 줄어든다.
    따라서 Guard Time 때문에 더 큰 손실이 발생할 수 있다.

3)CDMA:

  • 특정한 코드(확산 코드, Spreading Code)를 사용하여 원하는 신호를 곱하는 방식으로 데이터를 전송한다.
  • 모든 사용자가 같은 주파수와 시간대를 공유한다.

신호 전송과정)
1. 각 사용자에게 고유한 확산 코드를 할당

2. 데이터 신호와 해당 코드를 곱해서 송신

  • 원하는 신호에 고유한 확산 코드를 곱함
  • 이렇게 하면 신호가 넓은 주파수 대역으로 확산됨

3. 수신자는 해당 코드로 필터링해서 원래 신호 복원

  • CDMA 시스템에서는 수신자가 할당된 코드와 같은 코드로 연산을 수행하여 자신의 신호만 복원하고, 다른 사용자의 신호는 무시할 수 있음.

이더넷

사실상 LAN하고 동일어임.

  • 규모의 경제학 (가격 경쟁력으로 이김 => 나중에 기술 개발로 따로잡고)

  • 90년대 중반까지도 CSMA/CD 방식으로 모든 NODE를 wire로 연결했다.
    • 최대 이슈
      • propagation delay
      • node 수가 증가할 수록, 속도가 떨어진다.

Switch vs Router

1) Switch

  • Link layer 에서 동작
  • ip 주소(x) => ip 계층을 다루지 않고, MAC 주소 기반으로 통신
  • 이더넷 네트워크에서만 사용
  • 같은 네트워크 내에서 장치들 간 데이터를 빠르게 전달
  • MAC 주소 테이블을 이용해 패킷을 목적지로 전달

2) Router

  • Network layer 에서 동작
  • IP 주소 기반으로 패킷을 전달 => 서로 다른 네트워크 간 데이터 전송
  • IP 계층 뿐만 아니라 그 이상의 계층까지 관여 가능
  • 네트워크 간 라우팅을 수행하여 인터넷 통신 가능

Switch vs Router (포트 관점)

1) Switch

  • 같은 네트워크(서브넷) 내에서 동작하기 때문에 모든 포트가 동일한 네트워크에 속함.
  • MAC 주소를 기반으로 동작하며, 포트별 구별이 필요 없음.
  • 같은 네트워크 안의 컴퓨터 들이 연결되면, 스위치는 MAC 주소 테이블을 참고하여 목적지 MAC 주소를 가진 장치로 데이터를 전달함.
  • 즉, 모든 포트가 같으 네트워크에 속하고, 특별히 구별할 필요가 없음.

2) Router

  • 서로 다른 네트워크 간 통신을 담당하므로, 각 포트가 서로 다른 네트워크에 연결될 수 있음.
    • 예를 들어, WAN(인터넷)과 LAN(내부 네트워크)을 연결하는 라우터라면, WAN 포트와 LAN 포트가 구별됨.
  • 각 포트는 서로 다른 네트워크를 구별하는 역할을 하기 대문에, 포트별 설정이 다를 수 있음.
  • 즉, 라우터는 네트워크 간 데이터를 전달하기 위해 포트를 구별해야함.

네트워크 계층별 데이터 단위 명칭

  1. 이더넷 => Frame
  • 이더넷은 데이터 링크 계층 에서 동작하며, 하드웨어와 밀접하게 연결되어 있기 때문
  • 구성: MAC 주소(출발지/목적지) + 데이터 + CRC(오류 검출 코드)
  1. 네트워크 계층 (IP)=> Packet
  • IP 계층에서는 데이터를 전송할 때, 출발지 IP/ 목적지 IP 정보를 추가하여 네트워크 간 라우팅이 가능하도록 만듦.
  • 구성: IP 헤더(출발지 IP, 목적지 IP) + 데엍
  1. 전송 계층 (TCP/UDP)=> Segment / Datagram
  • TCP => Segment : 신뢰성이 필요한 전송은 데이터를 작은 단위로 나누어 흐름 제어 및 오류 제어를 수행

  • UDP => Datagram: 신뢰성보다 빠른 전송이 중요한 경우는 패킷 단위로 데이터를 전송하며, 이를 데이터그램이라고 한다.

  1. 전송 계층 => Segment / Datagram

Frame 형식

1. Preamble

  • 무의미한 1과 0의 반복 후 마지막은 11로 !
    • 워밍업
    • 타이밍 sync를 맞추기 위함
      • 즉, 새로운 frame이 시작됐다는 것을 알리면서 속도도 알면서 ~~~

2. 주소

3. 그 외

Ethernet

HW 주소 (HW addr, MAC addr)

  • 6BYTE 주소(48bit)
  • 원칙적으로 전세계 유일 (주민번호 개념)
    • 일부업체는 재사용함 (어처피 LAN 안에서 사용되니까 문제 발생하기 어려움)

Switch

  • 원래 wire로 연결되어있던 것을 switch로 바꾼 것임:
    원래는 모든 포트가 듣던 것(브로드캐스트 방식)을, switch를 통해 특정한 node한테만 데이터 전달(유니캐스트 방식)
  • MAC 주소 기반의 포워딩 : 각 포트에서 학습한 MAC 주소 테이블 기반임.
  • switch는 자체 ID가 없음. : IP주소를 할당받는 라우터와 다르다.

Ethernet

  • 컴퓨터 네트워크에서 가장 널리 사용되는 유선 LAN 기술로, 장치 간 데이터 전송을 위한 프로토콜을 제공한다.

주요개념

  1. ARP : IP 주소를 이용해 해당하는 MAC 주소를 찾는 프로토콜이다.
  2. Subnet: 하나의 네트워크를 작은 네트워크 그룹으로 나눈 방식

이더넷 프레임 구조

  • 이더넷에서 데이터 전송 시 프레임이라고 한다.

이더넷 네트워크의 기본 동작

  • MAC 주소 기반 통신: 스위치 등의 네트워크 장비는 목적지 MAC 주소를 기반으로 프레임 전달
  • 브로드캐스트: ARP 요청과 같은 패킷은 네트워크 내 모든 장치에 전송된다.
  • 게이트웨이를 통한 인터넷 연결내부 네트워크에서 인터넷으로 나가기 위해 GateWay를 거쳐야 한다.

서브넷과 IP 주소

  • IP 주소: 네트워크 내 장치 식별 주소
  • 서브넷 마스크: 네트워크와 호스트를 구분
  • 게이트웨이 주소: 다른 네트워크로 나갈 때 사용하는 라우터의 IP

스위치

  • 프로토콜이 없고, 경험을 통해 학습한다.

  • 프로토콜 없이 동작: 특정 네트워크 프로토콜 없이도 작동하며, 네트워크 트래픽을 분석하여 학습한다.
  • MAC 주소 학습: 처음에는 목적지 MAC 주소 모름 => 패킷을 모든 포트로 전송(플러딩) => 응답을 통해 해당 MAC 주소가 연결된 포트를 학습.
  • 포트와 MAC 주소 매핑: 학습한 정보를 MAC 주소 테이블(MAC 주소 + 연결된 포트)로 저장하여, 이후 같은 목적지의 트래픽은 해당 포트로만 전달한다.
  • 네트워크 효율성 증가: 학습된 정보를 기반으로 필요 없는 포트로의 전송을 차단하여 네트워크 트래픽을 줄인다.

네트워크 구성해보기

윈도우 pc 4
MAC 1
서버 2
프린터 1
Macbook 1

  • pc는 nat router 뒤쪽에 숨기는게 좋아

    • 물론 해커들이 nat router 뚫을 수 있지만, 방화벽 뒤에 어떻게든 숨겨 ip가 드러나지 않게 하는게 좋음.
  • server는 nat router 뒤에 숨기면 안돼. global ip를 가져야 하기 때문임

    • switch에 연결하자
  • nat router는 기본적으로 무선연결을 하고 있으니 wifi를 통해 노트북 연결한다.

  • 프린터는 두가지 방법이 있음

    • 1) nat router 쪽
      • 프린터가 이용하는 출력 포트를 nat router에 강제로 포트 매핑한다. 테이블에다가 static 매핑을 한다. 그럼 nat router 자체가 프린터처럼 보인다. 그럼 server가 nat router 자체를 프린터로 보면서 프린트 할 수 있게 된다.
    • 2) server 쪽
      • 그런데 이건 프린터를 위해 global ip달라고 하는건 좀 무리
profile
강의 기록 블로그

0개의 댓글

관련 채용 정보