컴퓨터 네트워크 05 링크 계층 | KOCW 한양대 이석복

protect-me·2021년 8월 24일
0

 📝 CS Study

목록 보기
6/37
post-thumbnail

KOCW | 컴퓨터네트워크 | 한양대학교 | 2015-2 | 이석복
KOCW | 컴퓨터네트워크 | 한양대학교 | 2018-2 | 이석복

위 강의를 수강하며 정리한 내용임을 밝힙니다.
네트워크 계층을 Top-Down 방식으로 위에서부터 한 겹씩 까보면서 디테일하게 알아보는 강의



  • Host와 Gateway 간에 전용선이 있는 것이 아니라,
    공용선 혹은 broad cast medium이라는 것을 통해서 연결되어있음
    즉, 하나의 Gateway에 수많은 Host가 연결되어있음
  • medium에서는 한 공간 안에 있으면 어디에 말하든 다 들리는 것처럼
    하나의 packet은 모두가 전달 받으며,
    packet이 하나 전달될 때, 다른 packet이 함께 전달되면 쓰레기가 된다.
    따라서, collision(충돌)을 제어해야함!

5.2 error detection, correction

5.3 Multiple Access protocols

  • 결국 충돌이 나지 않게 하는 것이 목적

이상적인 multiple access protocol

  • 한 사람만 쓰려고 할 때, bandwidth를 모두 사용함
  • 전부 다 동시에 사용하려고 하면 1/n씩 공평하게 사용함
  • 분산적으로 컴퓨팅이 되어야함
  • 동작이 단순해야함

MAC protocols 분류

  • Medium Access Control(MAC)

channel partitioning

  • TDMA: time division multiple access, 시간 분할 배정
  • FDMA: frequency division multiple access, 주파수 분할 배정

random access

  • 현실에서 많이 쓰임
  • 랜덤하게 필요한 연결이 있으면 연결함.
    => 충돌이 일어날 수밖에 없고, 어떻게 해결할 것인지 명시해둬야함
    => 그 해결 방식 중에 하나가 CSMA
  • CSMA(carrier sense multiple access)
    : listen before transmit: 전송 전 다른 frame이 전송중인지 확인 후 전송
    => 먼저 전송을 시작했지만, 다른 Host에 도달하기 전까지는 listen을 해도 알 수가 없음
    => 기다리던 두 Host가 동시에 시작하면 충돌이 일어남.
    => 충돌을 완전히 막을 수 없기 때문에 그 충돌로 인한 피해를 최소화 하기 위해 나온 것이 CSMA/CD
  • CSMA/CD(collision detection)
    => 충돌이 감지되면 모든 host가 frame 전송을 멈춤
    => 대기 random time을 두배씩 늘려가면서 재전송
    => Host가 많을수록 대기 시간이 늘어날 수밖에 없음.

taking turns

polling(여론 조사)
  • master node를 통해 관리함.
  • master node에서 오류가 났을 경우 전체가 피해를 보는 문제 => 현실에서 쓰이지 않음
token passing
  • token을 돌리면서 돌아가면서 token을 가진 Host만 전송함.
  • token을 분실하는 경우 전체가 피해를 보는 문제 => 현실에서 쓰이지 않음

5.4 LANs

addressing, ARP

(생략?)

Ethernet

  • = 유선 상황
  • CSMA/CD 사용 (carrier sense multiple access / collision detection)
  • 충돌이 일어나지 않으면 전송이 성공했다고 봐도 무방
  • 그러나 충돌이 일어나면 재전송을 해야하는데, feedback이 따로 없음
  • 따라서 collision detection이 100% 되야하는 상황.
  • A에서 보내고 있고, G에서는 A에서 시작된 것이 오고 있는 줄 모르고 시작했다가 충돌이 나고 G는 전송을 멈춤
  • 그러나 이미 출발한 frame의 조각이 있을 것이고, 퍼져나가고 있는데, A에 도착하기 직전에 A에서 나오던 frame이 모두 전송됨.
  • G에서는 detection이 되었지만, A에서는 detection이 되지 않았기 때문에 방금 전에 보낸 frame은 재전송이 일어나지 않음
  • 해결 방법: frame size의 최소값을 설정(LAN의 길이)

MAC : Medium Access Control(MAC)
앞 24bit: 제조사 번호
뒤 24bit: 제조사의 고유번호

사람을 추상화해봤을 때,

  • 이름: Host name
  • 주소: IP address
  • 주민번호: MAC address
    머신의 MAC address는 언제 어디서도 바뀌지 않음

ARP

  • address resolution protocol
  • GWR(Gateway Router)의 IP는 아는데, 아직 모르는 MAC address를 알아오기 위한 프로토콜
  • ARP query를 broadcasting하고 GWR은 이에 응답함

Addressing: routing to another LAN

  • forwarding table lookup(출력 포트 확인) => ARP table lookup(MAC address 확인)
  • frame의 header(MAC src, MAC dest)를 계속해서 새로운 주소로 떼었다 붙였다 하면서 이동
  • packet에서 변하는 것은 TTL(Time To live, 데이터 유효 기간) 뿐





switches

switch:self-learning

  • A에서 A'로 보내고 싶다고 switch에 보내면, switch에서는 A가 1번에 있구나를 알게 됨.
  • switch table에 A-1를 기록
  • A'를 swtich table에서 찾아보는데 없으므로, 1번 빼고 flood.
  • A'에서 A로 보내고 싶다고 switch에 보내면, switch에서는 A'가 4번에 있구나를 알게 됨.
  • switch table에 A'-4를 기록
  • A를 swtich table에서 찾아보니 있으므로, 1번으로 전달

Interconnecting switches

Switches vs Routers

router
네트워크 계층,
라우팅 알고리즘을 통해 포워딩 테이블을 관리함
IP Address

switch
링크 계층,
self-learning, flood를 통해 스위치 테이블을 관리함
특이하게도 본인은 MAC address는 없음. 즉, host에게는 안보임. 도우미 역할만 수행할 뿐.

VLANS

(생략)

5.6 data center networking

5.7 a day in the life of a web request



📚 참고

KOCW | 컴퓨터네트워크 | 한양대학교 | 2015-2 | 이석복
KOCW | 컴퓨터네트워크 | 한양대학교 | 2018-2 | 이석복


Photo by Nastya Dulhiier on Unsplash

profile
protect me from what i want

0개의 댓글