컴퓨터공학/데이터통신

[데이터 통신] Performance - Network Layer : Data Transfer

NIMHO 2022. 12. 1. 00:22
728x90

복습하기 위해 학부 수업 내용을 필기한 내용입니다.
이해를 제대로 하지 못하고 정리한 경우 틀린 내용이 있을 수 있습니다.
그러한 부분에 대해서는 알려주시면 정말 감사하겠습니다.

Contents

  • Services
  • Packet Switching
  • Performance
  • Internet Protocol Version 4
  • Next Generation (IPV6)
  • Transition from IPV4 To IPV6
 

Performance

네트워크 계층의 서비스를 사용하는 상위 계층 프로토콜은 이상적인 서비스를 받기를 기대한다.

하지만 네트워크 계층은 완벽하지 않다.

네트워크의 성능은 delay, throughput, packet loss로 측정할 수 있다.

혼잡 제어는 성능을 향상시킬 수 있는 문제이다.

728x90

Delay

우리 모두는 네트워크로부터 즉각적인 응답을 기대하지만, 패킷은 source부터 destination까지 지연을 겪는다.

네트워크의 네 가지 유형의 지연

1) 전송 지연 - Transmission delay

2) 전파 지연 - Propagation delay

3) 처리 지연 - Processing delay

3) 대기열 지연 - Queuing delay

 

Transmission Delay

송신자는 패킷에 비트를 하나씩 라인에 넣어야 한다.

패킷의 첫 번째 비트가 t1 시간에 라인에 놓이고, 마지막 비트가 t2 시간에 라인에 놓이면 패킷의 전송 지연은 (t2 - t1)이다.

즉, 첫 번째 비트에서 마지막 비트가 나가는 시간이다.

패킷이 길면 길수록 전송 지연은 길어진다.

송신자가 빠르게 전송할 수 있는 경우 더 짧아진다.

 

Delay_tr = (packet length) / (transmission rate)

ex. 패킷 길이가 10 bit이고, 전송 속도가 1 bit/s면 Delay_tr는 10 sec이다.

 

Propagation Delay

전파 지연은 비트가 전송 매체의 A에서 B까지 이동하는 데 걸리는 시간이다.

전파 지연은 매체의 전파 속도에 따라 달라진다.

진공 상태에서는 3*108m/sec이고 일반적으로 유선 매체에서는 훨씬 작다. 

 

Delay_pg = (distance) / (propagation speed)

 

Processing Delay (대체로 무시된다)

처리 지연은 라우터 또는 destination 호스트가 입력 포트에서 패킷을 수신하고,

헤더를 제거하고, 오류 감지 절차를 수행한 수 출력 포트로 패킷을 전달하거나(라우터의 경우)

상위 계층 프로토콜(destination 호스트의 경우)에 패킷을 전달하는데 필요한 시간이다.

처리 지연은 각 패킷마다 다를 수 있지만 보통은 평균으로 계산한다.

 

Delay_pr = time required to process a packet in a router or destination host

 

Queuing Delay

대기열 지연은 보통 라우터에서 발생한다.

라우터는 처리 대기 패킷을 저장하기 위해 각 입력 포트에 연결된 입력 큐를 가지고 있다.

라우터는 전송 대기 패킷을 저장하기 위해 각 출력 포트에 연결된 출력 큐를 가지고 있다.

라우터의 패킷 대기열 지연은 패킷이 라우터의 입력 큐와 출력 큐에서 대기하는 시간으로 측정된다.

 

대기하다가 큐에 들어가면 쌓인다.

처리해서 내보내야 하는데, 내보내기까지 또 기다린다.

그렇게 대기하는 데 걸린 시간 → 예측 불가능하다.

 

Delay_qu = time a packet waits in input and output queues in a router

 

Total Delay

송신자, 라우터, 수신자에 대한 동일한 지연을 가정할 때,

전체 경로에서 라우터의 수, n을 알면 패킷이 마주치는 전체 지연(source에서 destination 지연) 계산할 수 있다.

 n routers and n + 1 links

Total delay = (n + 1) (delay_tr + delay_pg + delay_pr) + n (delay_qu)

Link에서 생기는 지연이라서 n + 1개이다.

node에서 생기는 지연이라서 n개이다.

Throughput

네트워크의 어떤 지점에서의 처리량은 1초 동안 그 지점을 통과하는 비트의 수로 정의되며,

이는 실제로 그 지점에서의 데이터 전송 속도이다.
source에서 destination까지의 경로에서 패킷은 각각 다른 전송 속도를 가진 여러 링크(네트워크)를 통과할 수 있다.

Throuput = minimum { TR1, TR2,..., TR3 }

인터넷의 실제 상황

데이터는 일반적으로 두 개의 액세스 네트워크와 인터넷 백본을 통과한다.

 

Packet Loss

전송하는 동안 잃어버린 패킷의 수는 통신 성능에 영향을 미친다.

라우터가 다른 패킷을 처리하는 동안 패킷을 수신할 때, 수신된 패킷은 차례를 기다리는 입력 버퍼에 저장되어야 한다.

하지만, 라우터는 제한된 크기의 입력 버퍼를 가지고 있다.

버퍼가 가득 차서 다음 패킷을 삭제해야 할 때가 올 수 있다.

패킷 손실이 인터넷 네트워크 계층에 미치는 영향은 패킷을 재발송해야 하며,

이로 인해 오버플로우가 발생하여 더 많은 패킷 손실을 발생할 수 있다.

 

728x90