본문 바로가기
CS공부

[네트워크] 4. Network Layer - Routing, Forwarding, Virtual circuit Network, datagram Network

by 디토20 2022. 5. 7.
반응형

 

 

[네트워크] 4. Network Layer - Routing, Forwarding, Virtual circuit Network, datagram Network

 

 

1. Network Layer

1.1 Network Layer란?

  • transport 계층의 세그먼트를 sending host로부터 receving로 host로 배달해주는 역할
  • 세그먼트에 헤더를 붙여서 datagram을 만든 후 sending host -> receving host로 배달

 

 

1.2 Network Layer의 핵심 기능 2가지 (Routing, Forwarding)

1. Routing
  • 각 목적지별로 경로를 결정하는 것
  • 라우터는 routing 알고리즘을 실행해서, 네트워크의 모든 destination에 대해 경로를 계산 후 forwarding table에 저장
  •  forwarding table :  destination에 대해서 어떤 output port로 뽑아줘야할지 표시

 

 

 

2. Forwarding
  • datagram이 라우터의 input port로 들어오면, 그것을 목적지로 보내기 위해 어떤 output port로 보낼지 결정해서 내보내는 것
  • datagram이 들어오면, 헤더를 확인해서 목적지를 확인 한 후 , forwarding table에서 해당 목적지의 output link를 확인

 

 

4.2 Virtual circuit Network와 datagram Network

  • 네트워크는 Circuit Switching Network와 Packet Switching Network로 나누어진다.
  • Packet Switching Network에는 두가지 종류의 네트워크가 존재 : Virtual circuit Network, datagram Network

 

4.2.1. Virtual circuit Network (VC)

  • Circuit Switching Network를 닮아있음.
  • connection service
  • 데이터를 내보내기 전에 반드시 call setup을 하고, 데이터를 다 내보낸 후에는 teardown을 함

 

call setup
  • Network를 connect 하는 과정
  • call setup하는 과정에서 경로가 결정
  • sender가 원하는 목적지로 call setup 요청 메세지를 network로 보내면 network는 call setup 요청 메세지에 있는 목적지 주소를 보고 목적지까지 route
  • call setup을 하는동안 vc에 id가 할당 됨

 

  • VC는 datagram 헤더에 최종 목적지를 적는게 아닌, VC id를 적어서 보냄
  • VC id는 link 마다 변경될 수 있음

 

 

 

 

 

 

4.2.2.  datagram Network

  • connectionless
  • no call setup
  • datagram 헤더에 목적지 host address를 보고 packet을 forwarding

  • IP가 네트워크에 40억개정도 있다고하고 각 목적지별로 ouput link를 저장하면, 각 라우터마다 fowarding table의 raw가 40억개씩 되게 되므로 비효율적이기 때문에 range별로 나누어서 output link를 지정함.

 

728x90
반응형

댓글