밍경송의 E.B

[네트워크] network core, router, packet/circuit switching 본문

CSE/정보통신공학

[네트워크] network core, router, packet/circuit switching

m_gyxxmi 2023. 3. 29. 22:39

안녕하새우.>!~ 오늘은 빠르게 network core, router의 역할,

그리고 중요한 packet switching과 circuit switching에 대해 알아보겠습니다!

내용이 조금 어렵긴 하지만 천천히 보다 보면 이해가 가긴 감..^^

 

 

§ Network core: mesh of interconnected routers (서로 서로 연결되어있는 라우터들의 집합체)

*(internet protocol stack의 application layer에서 생성되는) message는 호스트들에 의해 여러 개의 packet으로 쪼개짐.

--> 이 packet은 network core에 위치한 router들을 거쳐 reciever(end system)에게 전송됨 

 


 

§ router(패킷스위치)의 역할 (packet을 source->destination으로 잘 보내는 것이 목적)

=Two key network-core functions

 

1 Routing (global action) : determine source-destination paths taken by packet

 호스트는 패킷을 라우터로 보낼 때, 각 패킷의 header에 목적지(end system)에 대한 정보를 포함시킴. 

-> header를 가진 packet을 통해 source - destination 루트를 결정

*라우팅 알고리즘을 이용함

 

2 Forwarding (local action) : path가 정해지면, link를 통해 패킷을 그 곳으로 보내주는 역할을 함. 

packet header로 이동할 라우터를 찾음 -> data의 output link를 결정하는 테이블이 존재 -> 테이블이 다음 링크를 결정

**each packet transmitted at full link capacity(각 패킷은 최대 전송속도와 같은 속도로 전송됨)

 

# 패킷의 모든 비트를 수신 -> 패킷의 헤더 열기 -> 헤더 다시 포장 -> 송신쪽 링크로 내리기 -> 실제 송신 의 과정을 거침

 


§ link와 router에서 데이터가 이동하는 방식

 

1 Packet switching (패킷 교환 방식) : store-and-forward(저장 후 전달 방식)

: entire packet must arrive at router before it can be transmitted on next link

패킷의 첫 비트가 다음 link로 전송되기 전에 모든 패킷이 라우터에 도착해야 함.

 

*packet 전송에 걸리는 시간(transmission delay)

: takes L/R seconds to transmit L-bit into link at R bps

  L bit의 패킷이 R bit/sec의 속도로 전송되는 링크 위에서 , 패킷을 전송하는 데 걸리는 시간L/R

 

 

* Example(그림 참고) : End-end-delay : 2L/R 

** 만약 store-and-forward 방식이 아니었다면 지연 발생 x -> End-end-delay: 1L/R


☆Delay 총 정리

 

1 Processing delay : 패킷의 헤더를 열어 검사하고, 패킷을 보낼 위치를 결정하는 데 걸리는 delay

(라우터의 성능 발전으로 요즘은 매우 짧아짐)

 

2 Queuing delay: 라우터에 도착하는 패킷이 버퍼에서 대기해야 하는 상황 (예측이 어려움)

why?

transmission rate of link for a period of time (<)  arrival rate to link exceeds -> packet will queue

   출력 링크로 패킷을 내보내는 속도 < 패킷이 라우터로 들어오는 속도 => 라우터에 queue가 생김 

 

+) 도착하는 패킷이 전송되어야 할 링크(다음 링크)가 이미 다른 패킷을 전송하는 중인 경우

   ㄴ각 라우터는 여러 개의 link를 가질 수 있기 때문에  가능

(Q. bufffer랑 Queue는 뭐가 다른 걸까용.. 약간 문맥에 따라 쓰이는 걸까.. queue의 memory를 buffer라고 하나요)

 

3 Packet loss (drop): packets can be dropped (lost) if memory (buffer) in router fills up

                                  버퍼가 넘치면 패킷이 버려짐 (버퍼의 용량은 한정적이기 때문에)

4 Transmission Delay : 위에서 구한 L/R 

 

5 Propagation Delay(전파지연)  : 비트가 실제로 링크를 타고 전파되는 시간 

 


 

2 Circuit switching (회선 교환 방식) 

: End-end resources allocated to, reserved for "call" between source and destinaiton 

  end system 간의 통신을 위해 link를 독점적으로 reserve해놓고 사용함 

-dedicated(독점) resources : no sharing (다른 사람과 공유X)

  -circuit-like performance (guaranteed된 일정 전송률로 데이터를 보내는 것이 가능함)

-전화와 같은 실시간 통신에 사용됨 (속도와 성능 *정)

*reserve한 링크가 데이터를 보내지 않고 있어도 다른 데이터가 이 링크를 사용할 수 없어 효율성이 떨어진다는 단점.

 

ㄴ한 링크가 4개의 회선(channel)로 구성되어 있음 -> 각 회선은 (링크 전송 속도)/4 의 속도로 데이터를 전송

 


§ Circuit switching의 회선 분할 방식(다중화 기술)

 

 1 FDM (Frequency Division Multiplexing)

: electromagnetic frequencies divided into narrow frequency bands

 할당된 '대역폭'을 나누어 사용하는 방식 (주파수를 나누어 씀)

2 TDM (Time Division Multiplexing) 

: time divided into slots

  할당된 대역폭을 '시간단위'로 나누어 번갈아가며 사용하는 방식

*slot(슬롯): 각각의 색으로 나누어놓은 구간

*frame(프레임): 4가지 슬롯을 합한 구간

=> 하나의 시간 slot은 reserve가 끝날 때까지 고정됨

 

 


 § packet vs circuit (switching)

* packet switching allows more users to use network (resource 낭비 ↓)

ㄴcircuit switching의 경우 1 Mb/s만이 필요한 user에게도 100 Mb/s 가 부여되는 경우가 생기니 낭비..!!

 

 

 

 

 

 

 

 

☆자료참고: https://joooootopia.tistory.com/5,

https://velog.io/@mingkimk/%EB%84%A4%ED%8A%B8%EC%9B%8C%ED%81%AC-%EC%A0%84%EB%8B%AC%EB%B0%A9%EC%8B%9D-%EB%B9%84%EA%B5%90-Packet-switching-Circuit-switching