longlivedrgn
Miro 찾기
longlivedrgn
전체 방문자
오늘
어제
  • 분류 전체보기 (74)
    • Swift (36)
    • iOS (31)
    • Algorithm (0)
    • Architecture, Design Patter.. (1)
    • Computer Science (6)
      • 컴퓨터 네트워크 (6)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
longlivedrgn

Miro 찾기

[컴퓨터 네트워크] Chap4. Network Layer: The Data Plane
Computer Science/컴퓨터 네트워크

[컴퓨터 네트워크] Chap4. Network Layer: The Data Plane

2024. 1. 5. 15:11

아래는 연세대학교 컴퓨터 네트워크 수업을 듣고 정리한 내용입니다.

(간략하게 정리하였기에 부족한 점이 있을 수 있습니다)

4.1 Overview of Network

두 개의 network-layer 기능

  • Forwarding
    • 라우터의 input으로 들어온 패킷을 output으로 움직이는 것
  • Routing
    • source부터 destination까지 routing 알고리즘을 통해서 route를 정하는 것

두 개의 network-layer 요소

  • Data plane
    • 각각의 router의 기능이다.
    • router의 input 포트에서 output 포트로 어떻게 넘어갈 것인 지를 결정한다.
    • forwarding function
  • Control plane
    • 보내는 host에서 받는 host까지 사이의 router들을 결정한다.
    • 두 가지 control-plane 접근이 존재한다.
      • Traditional routing algorithm
      • Software-defined networking(SDN)

 

4.2 What's inside a router

라우터는

  • Router input ports
  • Router ouput ports
  • High-seed switching fabric
    • memory
    • bus
    • crossbar
  • routing processor

Input port queueing

  • Head-of-the-Line Blocking
    • fabric이 처리하는 속도가 input port에 들어오는 packet들의 속도보다 느릴 때 생기게된다.

Output ports

  • Ouput ports에서는 두 가지 일을 한다.
    • Link Layer로 넘어가기 전에 datagram들을 잠시 queueing 해두는 일 -> Buffering
    • 그리고 해당 datagram을 어떠한 순서대로 link layer에 던질 지를 결정하는 것 -> Scheduling

Scheduling mechanisms

  • FIFO(First In First Out)
  • Priority Scheduling
  • Round Robin Scheduling
    • 모든 class들에게 순차적으로 물어보는 것
  • Weighted Fair Queuing(WFQ)
    • Round Robin에다가 priority를 준 것이다.

 

4.3 IP: Internet Protocol

  • Network Link는 MTU(Max.transfer.size)를 가지고 있다.
    • 최대 link-level frame의 사이즈
  • 따라서, 큰 IP datagram은 작은 datagram으로 나누어져야한다.
    • Fragmentation
  • 그리고, 도착지에서는 다시 reassemble이 된다.

  • IP 주소는 host와 router의 interface의 식별자이다.
    • 여기서 interface는 host/router와 physical link 사이의 연결점이라고 생각하면 된다.
    • router는 여러 개의 interface를 가지고 있으므로, 여러 개의 IP address를 가질 수 있다.
    • 그러나, host는 한 개 혹은 두 개의 IP address를 가질 수 있다.

  • Subnets
    • IP주소의 동일한 subnet 주소 파트를 가지고 있는 것들의 모임
    • 즉, 같은 서브넷일 경우, router의 개입 없이도 서로 연결될 수 있다.
      • 중간에 router가 없다!
      • 각각의 고립된 network라고도 볼 수 있다.

 

IP addressing: CIDR

  • CIDR
    • Classless InterDomain Routing
    • a.b.c.d/x와 같이 subnet bit를 임이의 길이로 정해줄 수 있다.
    • 그 전에는 class가 정해져있기에 IP address의 갯수가 정해졌는데, 해당 방법은 클래스가 정해져있지 않기에 더 많은 IP address 갯수를 보장받을 수 있다.

DHCP

  • Dynamic Host Configuration Protocol
    • plug and play -> 자동으로 server에게서 IP 주소를 받아온다.
    • Network server(ISP)에게서 동적으로 IP 주소를 할당 받는 것이다.
    • Client는 broadcast를 통해서 DHCP server를 찾는다. 그리고 서로 메세지를 주고 받아 IP address를 전달 받는다.

  • Client는 DHCP를 통해서 아래의 정보를 전달 받는다.
    • Client의 First-Hop router의 주소
    • DNS 서버의 이름과 IP 주소
    • Network mask

NAT: network address translation

  • IP 주소가 부족하므로 사용되는 기술 중 하나이다.

  • Local network는 하나의 IP 주소만을 사용하여, 바깥 세상에서는 해당 IP 주소만을 활용해서 네트워크 통신을 한다.

 

 

IPv6, IPv4

  • IP 주소가 부족하여 IPv6가 나오게 되었다.
  • IPv6는 IPv4와는 다르게 fragmentation이 허용되지 않는다.
  • 만약 datagram의 사이즈가 너무 크다면, ICMP 메세지를 통해서 datagram의 사이즈가 너무 크다고만 메세지를 통해서 알려준다.

 

  • IPv4에서 IPv6로 변경되는 시기에는 IPv4를 지나가야되는 경우가 있는 데 이럴 때는 Tunneling 기술을 활용한다.
    • 기존의 IPv6 datagram을 IPv4 datagram으로 감싼다.
저작자표시 (새창열림)

'Computer Science > 컴퓨터 네트워크' 카테고리의 다른 글

[컴퓨터 네트워크] Chap3. Transport Layer(2)  (0) 2023.10.21
[컴퓨터 네트워크] Chap3. Transport Layer(1)  (0) 2023.10.20
[컴퓨터 네트워크] Chap2. Application Layer(2)  (1) 2023.10.19
[컴퓨터 네트워크] Chap2. Application Layer(1)  (0) 2023.10.16
[컴퓨터 네트워크] Chapter 1: Introduction  (1) 2023.10.15
    'Computer Science/컴퓨터 네트워크' 카테고리의 다른 글
    • [컴퓨터 네트워크] Chap3. Transport Layer(2)
    • [컴퓨터 네트워크] Chap3. Transport Layer(1)
    • [컴퓨터 네트워크] Chap2. Application Layer(2)
    • [컴퓨터 네트워크] Chap2. Application Layer(1)
    longlivedrgn
    longlivedrgn

    티스토리툴바