상세 컨텐츠

본문 제목

Network layer

Computer Science/Network

by yellowmarine 2020. 5. 8. 19:49

본문

Network Layer

Introduction

How?

  • 데이터그램 형식으로 보내진다.
  • 라우터를 통해 경로를 설정
  • 라우팅 알고리즘을 통해 포워딩 테이블을 설정 -> 주소 범위로 테이블 관리 -> longest prefix matching
  • $$2^{32}$$으로 IP를 할당하는것은 트래픽이 넘처나고 관리가 힘들어진다

IP datagram format

  • Data -> TCP 와 UDP의 데이터를 가지고 있다
  • 32비트 source, destination 주소
  • TTL (Time to live) -> 라우터 네트워크를 무한히 도는 것을 막기 위해 설정 라우터를 거칠때마다 -1
  • 40 byte짜리 packet 들 ack만 하는 패킷

IPv4

  • 32비트 짜리 우리가 생각하느 123.123.123.123 형태 8비트 짜리로 자른다!
  • 네트워크 인터페이스 카드에 따라 여러 아이피 가능
  • 처음 24비트는 네트워크 아이디, 뒤의 8비트는 호스트 아이디

Classic vs Present

  • 예전에는 prefix 로 진행 하지만 비효율적
  • 현재는 Classless Inter Domain Routing -> ip뒤에 /0~24 정도로 네트워크를 프리픽스 한다

Subnet

  • IP를 통해 연결되는 것은 IP자원을 너무 비효율적 -> 고로 subnet으로 연결
  • 라우터는 서브넷에 속할 수 있다.

NAT(Network Address Translation)

  • local 적으로 IP를 할당 라우터에서 자동적으로 global IP 주소로 변환
  • 라우터 별로 NAT table 존재
  • NAT를 사용할 경우 서버로써 역할을 할 수는 없다 -> NAT table이 변환 과정에 아이피와 포트 번호를 변경하기 때문

DHCP(Dynamic Host Configuration Protocol)

  • GWR(GateWay Router)가 모든걸 조절!
  • 네트워크 IP를 할당해준다.

IP Fragmentation

  • MTU 보다 큰 페킷에 대해서 라우터에서 쪼개서 전송한다.
  • Flag는 뒤에 쪼개진 패킷의 유무를 표시
  • offset은 크기의 /8
  • 모든 패킷이 assembly 되지않으면 다시 전송

ICMP

  • TTL, packet 유실 등과 같은 상황을 보고해주는 프로토콜!
  • 라우터의 트레이스를 가능하게 해준다.

IPv6

  • tunneling 해줄 수 있는 라우터가 필요하다
  • 128비트 짜리 큰 용량

Fowarding Table 생성

  • Link state algorithm
    • 모든 그래프의 형태를 알고있는 상황에서 구하는 알고리즘
    • 다익스트라 알고리즘!
  • Distante vector
    • 벨멘 포드 알고리즘
    • count to infinite 라는 상황이 발생 고로 poison reverse 사용

Hierachical network

  • AS(autonomous system)
    • 각각 자체적인 라우팅 시스템을 가진 그룹
    • Infra, Inter 로 나누어짐

'Computer Science > Network' 카테고리의 다른 글

DHCP  (0) 2020.07.09
TLS / SSL  (0) 2020.06.01
Wireless  (0) 2020.05.19
5G intro  (0) 2020.05.17
Link layer  (0) 2020.05.11

관련글 더보기