Network core (Circuit switching vs Packet switching) (2)

쓰리원·2022년 4월 22일
0

Network

목록 보기
2/17
post-thumbnail

1. Circuit switching

※선동작(call setup) :
1. 경로 결정 (대역폭을 할당할 수 있는 경로를 선택한다)
2. 대역폭 할당(결정된 경로상에서 일정한 데이터 전송 속도를 미리 할당)

Circuit switching은 하나의 회선을 할당받아 데이터를 주고받는 방식입니다. 먼저 통신을 위한 call setup을 해야하며 연결이 되고 나면 출발지(source)로부터 목적지(destination)까지 도착하는데 사용되는 회전 전체를 독점(dedicated)하기 때문에 다른 사람이 끼어들 수 없습니다. Circuit switching은 전화와 같은 실시간 통신에 사용됩니다. 따라서 속도와 성능이 일정합니다.

위의 그림처럼 특정 사용자가 종료시까지 하나의 대역폭을 데이터 전송에 상관없이 점유합니다. (고속도로 차도 하나를 차 한대가 전세낸 상황) -> 효율성을 떨어지지만 성능은 좋음

Circuit switching이 회선을 분할하는 방식에는 FDM과 TDM이 있습니다.

FDM(Frequency Division Multitasking) 방식은 할당된 대역폭을 나누어 사용하는 방식이고, TDM(Time Division Multitasking) 방식은 할당된 대역폭을 시간단위로 나누어 번갈아가며 사용하는 방식입니다.

2. Packet Switching

먼저 Packet switching은 데이터를 패킷(packet)이라는 단위로 쪼개서 전송하는 방식입니다. 패킷은 다음 링크로 전송하기 전에 저장을 한 뒤 전달하는 store and forward 방식을 따릅니다. 패킷의 헤더에는 출발지(source)와 목적지(destination) 정보가 있습니다. 라우팅 알고리즘을 이용하여 경로를 설정하고, 중간의 라우터들을 거쳐 최종 목적지에 도달하게 됩니다. 이러한 과정에서 패킷은 다음 라우터로 이동하기 위해 큐에서 대기(queueing)하는데 이 때 수용할 수 있는 큐의 범위를 초과하게 되면 손실(loss)이 발생하게 됩니다.

3. Packet Switching VS. Circuit Switching

1MB/s 이므로 각각 유저에게 100kb 씩 할당된다면 Circuit Switching 으로는 최대 10명의 유저가 사용이 가능하다.

Packet Switching으로는 이론상 무제한으로 사용이 가능하다. 그리고 10명이상이 동시에 할당되어야 하는 경우는 생각보다 적기 때문에 결과론 적으로는 Packet Switching이 비용상 이득인 경우가 많다.

4. Packet Delay and Loss

Packets queue in router buffers, waiting for turn for transmission
• Queue length grows when arrival rate to link (temporarily) exceeds
output link capacity
Packet loss occurs when memory to hold queued packets fills up

5. Packet Delay: Four Sources

1. Nodal processing delay:

  • Check bit errors (프로세스 딜레이는 패킷을 확인하고 검사)
  • Determine output link (알맞은 아웃 고잉 에지로 보냄)

프로세스 딜레이는 패킷을 확인하고 검사해서 목적지를 확인해서 아웃 고잉 링크로 보내는 일 입니다. 줄이는 방법은 라우터를 CPU 성능 좋은 거로 바꿔줍니다.

2. Queueing delay

  • Time waiting at output link for transmission(아웃 고잉 에지 큐에 다른 패킷들이 있으면 자기 순서 대기)
  • Depends on congestion level of router

알맞은 아웃 고잉 에지로 보내야 되는데 라우터로 유저한테서 들어오는 속도가 나가는 링크 bandwidth보다 더 커지는 경우가 있습니다. 이런 경우를 대비해서 임시 버퍼 혹은 큐라고 불리는 저장 장소가 라우터에 존재합니다. 만약에 아웃 고잉 에지 큐에 다른 패킷들이 있으면 자기 순서 기다린 다음에 나갑니다. 그 기다리는 시간이 바로 큐잉 딜레이 입니다.

3. Transmission delay

  • R=link bandwidth (bps) (bandwidth가 클수록 트랜스미션 딜레이가 작다.)
  • L=packet length (bits) (비트의 크기가 작을수록 딜레이가 작다.)
  • time to send bits into link = L/R

트랜스미션 딜레이는 이 링크로 첫 번째 비트부터 마지막 비트까지 완전히 나갈 때까지 걸리는 시간입니다. 예를 들면 이게 100비트짜리였다. 그러면 첫 번째 비트부터 마지막 비트까지 나가야 완전히 나간 것 입니다.

트랜스미션 딜레이는 궁극적으로는 패킷 크기를 링크 bandwidth으로 나눈 것 입니다. 이 bandwidth가 크면 클수록 트랜스미션 딜레이가 작습니다. 예를들어 파이프가 아주 가늘면 이거 거 다 부을 때까지 걸리는 시간이 오래 걸립니다. 그러나 파이프가 넓으면 금방 부을 수 있습니다.

4. Propagation delay

  • d = length of physical link
  • s = propagation speed in medium (~2x108 m/sec)
  • propagation delay = d/s

propagation 딜레이는 뭐냐면 마지막 비트가 링크에 올라오면 그 마지막 비트가 링크에 올라와서 다음 라우터까지 도달할 때까지 걸리는 시간입니다. 링크 길이를 빛의 속도로 나눈 것 입니다.

예시로 총정리.

Nodal processing delay 이건 톨게이트라고 보면 됩니다. 차가 하도 막히니까 나라에서, 톨게이트에서 시간이 많이 걸리니까 하이패스로 바꿔주는 겁니다. 그래도 막힌다면, Transmission delay를 줄이기 위해서 차선 16선으로 두 배 늘리는 것 입니다. 그래도 추석 때 막힐 겁니다. 그래서 이 네트워크 상에서 생기는 딜레이는 결국에는 저 큐잉 딜레이에서 모든 일이 발생되는 겁니다. 이거는 우리가 조절할 수 있는 게 아니라, 사람들이 사용하는 패턴이기 때문에 어쩔 수 없습니다.

6. reference

https://swalloow.tistory.com/55

profile
가장 아름다운 정답은 서로의 협업안에 있다.

0개의 댓글