[모각코] 컴퓨터 네트워크 혼내주기 🍕

2024. 5. 22. 20:21·주제 업슴
목차
  1. 🍕 개요
  2. network layer 에서 하는 일
  3. 💯 Two key network-layer functions
  4. Data plane
  5. Control plane
  6. Per-router control plane
  7. Software-Defined Networking (SDN) control plane
  8. Q. datagram 을 sender 에서 receiver 까지 전송하는 데에 어떤 service model 을 제공해줄 것인지
  9. decentralized switching
  10. Longest prefix matching
  11. recall delay-based congestion control
  12. buffer management
  13. packet scheduling : FCFS
  14. scheduling policies (1) : priority
  15. scheduling policies (2) : round robin (RR)
  16. scheduling policies (3) : weighted fair queueing (WFQ)
  17. path-selection algorithms
  18. Subnets
  19. 🍕 정리

🍕 개요

나예요

방금 중간고사가 끝났는데 기말고사가 됐다... 중간고사 때 아쉬운 성적을 취득한 관계로 기말 때는 배로 열심히 해야만 하게 되었다.

그치만 중간고사 이후 고작 4 주 쯤 더 살았다고 사람 지능이 달라졌을 리가 없다... 경각심을 느낀다 원래는 모각코 시간에 개인적인 프로젝트 공부나 동아리 스터디 공부를 했는데, 발등에 불이 떨어져서 컴네 공부를 했다 박박 정리하면서도 모르겠는 컴퓨터 네트워크~ 수업을 들으면서 중요한 부분으로 추정되는 부분을 정리했다. 

network layer 에서 하는 일

  • segment 를 sending host 로부터 receiving host 로 전달하는 일을 한다.
    • transport layer 에서는 process to process
    • network layer 에서는 host to host
  • sender 는 받은 segment 를 datagram 으로 바꾸고 link layer 로 전달한다.
    • segment 에 header 를 붙여서 datagram 으로 만든다.
  • receiver 는 datagram 을 받아서 segment 를 끄집어내고 transport layer 로 segment 를 전달한다.
  • network layer 는 모든 host 모든 router 에 구현되어 있어야 한다.
    • (transport layer 는 sending host 와 receiving host 에만 구현되어 있어도 된다.)

💯 Two key network-layer functions

  • forwarding vs routing
  • forwarding
    • router 의 input link 로 들어온 packet 을 header 를 참고해서 정확한 output link 로 이동시켜주는 것
  • routing
    • 보내는 쪽에서 받는 쪽까지 (출발지-목적지, source-destination) packet 이 거쳐가야 할 경로를 결정해주는 것
  • forwarding, routing 은 누가 담당할까?

Data plane

  • local, per-router function (라우터 끼리 처리)
  • forwarding 기능이 대표적
  • 하나의 네트워크 안에서 이루어짐

Control plane

  • 네트워크 전반적인 logic 기능을 함
  • 네트워크 전체에서 이루어짐
  • datagram 이 source 에서 destination 까지 가는 데에 어떤 라우터를 거쳐야 할지 결정
  • traditional routing algorithms
  • software-defined networking (SDN)
  • plane → layer 들이 있는 것
    • 한 계층 안에 두 가지 일을 하는 것이 있어서 나눈 것임
    • network 안에 하나는 data plane 하나는 control plane

Per-router control plane

  • traditional routing algorithms
  • 전통적인 방식임
  • 라우터 마다 개별적으로 control plane 이 구현되어 있음 그래서 라우터 끼리 interact 함 (link 를 통해)
  • 경로를 설정한 결과는 local forwarding table 에 저장함 (control plane 의 결과)
    • data plane 에서 packet 이 들어오면 table 과 header 를 보고 찾아서 forwarding 을 수행함
    • 결국 원활한 fordwarding 이 이루어지려면 control plane 과 data plane 이 협업해야 함

Software-Defined Networking (SDN) control plane

  • remote controller computes, installs forwarding tables in routers
  • 원격의 controller 가 하나 있음 (보통은 server 하나 구현)
  • remote controller 에서 network 상의 전체 모양을 알 수 있음
  • 각각 라우터에 controller agent 존재
    • ca 와 remote controller 소통해
    • remote controller 가 각각의 라우터들이 사용할 모든 forwarding table 계산
    • ca 로 전달 → forwarding table 사용
  • forwarding table 을 이렇게 계산하면 더 정확하고 일관성 있음
    • 모든 라우터의 동일한 상태를 가지고 라우터들에게 연락하기 때문
  • controller 가 만약 죽어버리면 . 다끝이야 (단점…)

Q. datagram 을 sender 에서 receiver 까지 전송하는 데에 어떤 service model 을 제공해줄 것인지

  • for individual datagrams
    • 보증된 delivery
    • 40 msec 내에 무조건 delivery 보증
  • for a flow of datagrams
    • 하나의 tcp connection 에서 전달되는 모든 packet 을 flow 라고 한다.

decentralized switching

  • header field 를 검사하고 forwarding table 를 통해 ouput port 를 찾는다.

Longest prefix matching

  • prefix 돌아보면서 매칭되는 것을 찾아야 하는데 시간이 오래 걸림
  • TCAMs 이용해서 lookup (ternary content addressable memories)
  • TCAM 에 주소를 전달하면 1 사이클 내에 output link 를 반환한다.

recall delay-based congestion control

  • bottleneck link 를 충분히 full 하게 하되 넘치지 않게 조절하는 것
  • 너무 긴 RTT 는 realtime application 에서 성능이 좋지 않다. TCP response 를 반환하는 것이 부진하기 때문이다. (빠른 재전송이 불가하기 때문)
  • RTT 를 줄인다.

buffer management

  • drop
    • tail drop
    • priority
  • marking

packet scheduling : FCFS

  • 다음 link 에 어떤 packet 을 보낼지 결정하는 것

scheduling policies (1) : priority

scheduling policies (2) : round robin (RR)

  • packet 번갈아서 하나씩만 보냄

scheduling policies (3) : weighted fair queueing (WFQ)

  • queue 별로 weight 를 다르게 부여

path-selection algorithms

  • network layer 의 가장 큰 할 일은 forwarding 과 routing 이다.
  • path-selection algorithms (routing) 를 이용하여 forwarding table 을 구한다.
  • forwarding table 을 보고 어느 링크로 내보낼지 설정하는 것이 forwarding 이지
    • 이를 위해서는 IP protocol 이 필요하다. (header field, addressing…)
    • ICMP protocol 도 필요하다. (에러 핸들링)

Subnets

  • router 를 거치지 않고 도달 가능한 device interface 의 집합을 subnets 이라고 한다.

🍕 정리

기말고사 라고 생각하니까 지치는 거임 대학생 총출동!! 재수강 여부 결정전 여름 밤 스페셜!

이번주에는 Chapter 4 를 공부해보았다 양이 어마무지하게 많다 아악 이거 어떻게 다 외우지... 앞서나가버릴걸, 일 년 전부터 공부할걸, (되겠냐고...) 업보려니 하고 오늘부터 시험 공부를 하기로 했다.

'주제 업슴' 카테고리의 다른 글

[빅데이터 최신 기술] ADHD 관련 텍스트 마이닝: 키워드 네트워크와 감정 흐름 기반 분석 - 1  (0) 2025.03.26
Jest 로 프론트엔드 테스트 코드 작성하기  (0) 2025.02.18
Git 브랜치 전략  (0) 2024.07.07
[모각코] 컴퓨터 네트워크 혼내주기 2 🍕  (0) 2024.05.29
스크롤에 반응하는 목차 하이라이트 만들기  (0) 2024.03.20
  1. 🍕 개요
  2. network layer 에서 하는 일
  3. 💯 Two key network-layer functions
  4. Data plane
  5. Control plane
  6. Per-router control plane
  7. Software-Defined Networking (SDN) control plane
  8. Q. datagram 을 sender 에서 receiver 까지 전송하는 데에 어떤 service model 을 제공해줄 것인지
  9. decentralized switching
  10. Longest prefix matching
  11. recall delay-based congestion control
  12. buffer management
  13. packet scheduling : FCFS
  14. scheduling policies (1) : priority
  15. scheduling policies (2) : round robin (RR)
  16. scheduling policies (3) : weighted fair queueing (WFQ)
  17. path-selection algorithms
  18. Subnets
  19. 🍕 정리
'주제 업슴' 카테고리의 다른 글
  • Jest 로 프론트엔드 테스트 코드 작성하기
  • Git 브랜치 전략
  • [모각코] 컴퓨터 네트워크 혼내주기 2 🍕
  • 스크롤에 반응하는 목차 하이라이트 만들기
daun_up
daun_up
가나디 발을 씻자
daun_up
빌려온 가나디
daun_up
전체
오늘
어제
글쓰기 관리
  • 분류 전체보기 (37)
    • Algorithm 뽀개기 (19)
    • React.js 마스터 하기 (1)
    • 봄봄 Spring 이 왔어요 (3)
    • Nuxt.js 아는 척 하기 (2)
    • JavaScript 정복하기 (3)
    • 또error났니 (0)
    • 주제 업슴 (6)
    • Nomadcoders 보는 중이 싫으면 절이 떠나.. (2)
hELLO· Designed By정상우.v4.6.1
daun_up
[모각코] 컴퓨터 네트워크 혼내주기 🍕
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.