기초컴퓨터네트워크 03 ( Network core, delay / loss / throughput )

TonyHan·2021년 3월 9일
0
post-custom-banner

3. Network core(이어서)


망사업자가 깔아놓은 라우터들 : 빠른속도로 데이터를 원하는 목적지로 전달하는 역활

packet switching : (패킷 : 보내야할 데이터를 패킷으로 나눔) 패킷을 출발지로부터 도착지까지 보내는데 여러개의 라우터를 거치어서 패킷을 보내게 된다. 라우터간 회선의 속도에 따라 보내게 된다.

store-and-forward


source와 destination 사이에 많은 라우터들이 존재한다.

  • store-and-forward : 중간 라우터에서 받은 데이터로 어디로 보내야할지 결정하고 전송해준다.

  • end-to-end delay = 2 x L/R (propagation 딜레이가 없다고 가정할때 L은 보내는 패킷의 크기, R은 전송속도)
    참고로 딜레이는 "propagation 딜레이 + one-hop transmission delay"로 존재

  • one-hop numerical example
    ont-hop 이라고 하면은 source에서 라우터 사이를 의미한다. 이때는 L/R로 계산하기 때문에 end-to-end는 2배가 곱해져 있다.
    예를 들어서 L이 7.5, R이 1.5 이라고 하면 one-hop transmission delay는 5초이다.

그럼 왜 걷어들이는가? 패킷을 일단 받아 읽어야 어디로 보낼지 결정할 수 있기 때문이다.

Packet switching: queueing delay, loss


데이터 들어오는 속도는 빠른데 처리하는 속도가 느린경우 버퍼가 존재한다. 이것을 보고 queueing이라고 부른다.

queueing and loss

  • 만약 버퍼가 가득 찼는데도 계속 들어오면 그냥 라우터에서 데이터를 버려버린다.

Two key network-core functions

network-core에서 가장 중요한 2가지 기능은 routing과 forwarding이 있다.

  • routing : 들어온 데이터를 어떤 라우터로 보내줄지를 결정하는 것
  • forwarding : 어느쪽 output interface가 여러개 있을때 어느쪽 interface로 보낼지를 결정하는 것. 라우터 내부에는 forwarding table이 존재해서 destination address를 보고 어떤 output interface로 보낼지를 결정하는 것이 forwarding table이다. 이때 forwarding table을 만들고 관리하는 것이 routing algorithm이다.

Alternative core: circuit switching


전화망에서는 packet switching을 쓰지 않고 circuit switching을 쓰게 된다. 출발지와 목적지까지의 경로가 정해지면 코어를 위해서 resource가(주파수, 시간) 할당된다.

예를 들어 위와 같이 각각 4개의 회로가 존재할때 2번 혹은 1번 회로를 사용하도록 할당이 되어 공유되지 않는다.
만약 서로간의 메세지가 없다면 idle 상태가 된다.

Circuit switching: FDM and TDM

FDM(Frequency) : 주파수 분리를 통해 동시에 전송이 되어도 주파수간 섞이는 일이 생기지 않는다.
TDM(Time) : 한 사용자가 시간축으로 나누어 모든 주파수를 사용할 수 있도록 하는 방식이다.

Packet switching vs Circuit switching

N명의 사용자가 1Mbps의 라우터를 통해 데이터를 전송한다고 할때 사용자가 데이터를 보낼때는 100kbps를 전달하게 된다. 작동시간은 전체의 10%만 보내게 된다.

circuit switching은 100kbps는 1Mbps만큼 다루어 10명에게 배정을 해줄 수 있다.
packet switching은 35명의 유저가 사용한다면 보냄과 동시에 패킷이 보내질 확률이 크게 줄어든다.

  • Packet switching의 장점
    resource sharing에 유리
    setup없이 간단함

  • Packet switching의 단점
    과하게 들어오면 패킷 딜레이와 손실이 생긴다. 믿을만한 데이터 전송을 위해 프로토콜과 congestion control필요
    몇몇 애플리케이션은 bandwidth의(접속속도) 보장이 필요하다.

Internet structure: network of networks

  • 인터넷의 구조
    End Systems은 ISPs에(residential, company and university등) 연결되어 있다.
    ISP간에도 연결이 되어 있어야 한다.
    경제적 논리와 국가 정책에 따라 망이 연결되게 된다.

인터넷 연결방식들

모든 access 망들을 연결하는 방식 : 거의 불가능하다.


모든 ISP를 global ISP로 연결되어 있는 구조이다.


하지만 위의 구조도 힘들기 때문에 ISP를 또 분리해 놓는 방식이 존재한다.


그중에서도 ISP 간의 연결을 하는 것을 peering link라고 부른다. 그리고 여기에 추가적으로 IXP(Internet exchange point)가 등장한다. ISP만으로도 데이터를 감당할 수 없어서 IXP가 또 데이터를 처리해준다.


지역에서의 가입자 망에서 ISP에 연결되도록 한다.


Content provider network (ex. 구글) 데이터 센터를 ISP와 상관없이 연결해 놓은 네트워크들로 기업만을 위해서 사용하는 네트워크이다.


최종 정리해보면 위와 같이 네트워크가 구성된다. 물론 계층을 거치지 않고 Tier1에 바로 연결될수도 있다.

=== Delay, loss, throughput in networks ===

1. How do loss and delay occur


딜레이는 queueing delay가 발생할 수 있다. 입력보다 내보내는 속도가 느린경우 그리고 이 상황이 지속되면 packet loss가 발생한다.


이때의 nodal delay(노드 처리 지연시간)는 총 4가지로 나누어서 생각할 수 있다.

  • dproc(nodal processing) : bi에 에러 확인, 내보내는 링크 확인, 1 msec에 결정
  • dqueue(queueing delay) : 출력 링크로 전송되기 위해 기다리는 시간, 얼마나 밀리는 시간인지에 따라 달라진다.
  • dtrans(transmission delay) : 회선위에 데이터를 올려놓는데 걸리는 시간. L(packet length (bits)), R(link bandwidth(bps)) = L/R
  • dprop(propagation delay) : 비트가 회선을 따라 목적지까지 이동하는 시간. d(length of physical link), s(propagation speed (2x10^8m/sec)) = d/s

예시

profile
신촌거지출신개발자(시리즈 부분에 목차가 나옵니다.)
post-custom-banner

0개의 댓글