컴퓨터 네트워크

컴퓨터 네트워크 1장 - 네트워크의 코어

으엉어엉 2024. 4. 10. 17:47
728x90

 

굵은선: 네트워크 코어

통신경로는 N개의 link와 (N-1)개의 router가 있다

1.3.1 패킷 교환(packet switching)

네트워크 애플리케이션에서 종단 시스템들은 서로 메시지(message)를 교환한다.

메시지에는 애플리케이션 설계자가 원하는 것이 포함될 수 있다. 

  • 제어기능
  • 전자메일 메세지
  • JPEG이미지
  • MP3 오디오 파일

출발지 종단 시스템에서 목적지 종단 시스템으로 메시지를 보내기 위해 송신시스템은 메시지를 패킷(packet)이라고 하는 작은 덩어리로 분할한다. 송신측과 수신측 사이에서 각 패킷은 통신링크와 패킷스위치를 거치게 된다. 

패킷은 링크의 최대 전송률과 같은 속도로 각각의 통신링크에 전송한다.

출발지 종단 시스템 혹은 패킷 스위치가 R bps(bits per second)의 속도로 링크에서 L 비트의 패킷을 송신한다면,
그 패킷을 전송하는 데 걸리는 시간은 L/R 초다.

 

저장-후-전달 전송(store-and-forward transmission) 방식

 


대부분의 패킷 스위치는 저장-후-전달 정송 방식을 사용

 

  • 스위치가 출력 링크로 패킷의 첫 비트를 전송하기 전에 전체 패킷을 받아야 함을 의미한다.
  • 라우터는 보통 여러개의 링크를 갖는데 이유는 기능이 입력되는 패킷을 출력링크로 교환하는 것이기 때문이다.
  • 출발지는 목적지로 전송할 3개의 패킷(1, 2, 3)을 가지고 있으며, 각각의 패킷은 L 비트로 구성되어 있다.출발지는 링크에서 L 비트의 패킷을 R bps(bits per second)의 속도로 송신하고 있다.
  • 출발지는 링크에서 L 비트의 패킷을 R bps(bits per second)의 속도로 송신하고 있다
  1. 패킷 1의 일부분을 전송했고 패킷 1의 앞쪽이 이미 라우터에 도착
  2. 라우터가 이 순간에 저장-후-전달을 택하고 있기 때문에 라우터는 수신한 비트를 전송할 수 없다.
  3. 대신에 그 패킷의 비트를 먼저 저장(buffer)한 후 라우터가 패킷의 모든 비트를 수신한 후에만 출력링크로 그 패킷을 전송하기 시작한다.

따라서 라우터에 수신후 다음 링크로 보내야 한다.

 

 

경과시간 계산 (End-end delay)

  • 0 초 : 출발지가 패킷 1을 전송하기 시작
  • L/R 초 : 출발지는 패킷 1의 전체 데이터를 전송 완료했으며, 전체가 라우터에 수신되고 저장되었다. (전파 지연이 없기 때문)
    라우터가 전체 패킷을 수신했기 때문에 라우터는 목적지를 향해 그 패킷을 출력 링크로 전송하기 시작한다.

  • 2L/R 초 : 라우터는 전체 패킷을 전송했으며, 목적지는 패킷 1 전체를 수신 완료한다. (전파 지연이 없기 때문)

전체 지연시간은 2L/R이다. 만약 스위치에 비트가 도착하자마자 (전체 패킷을 수신할 때까지 기다리지않고) 전달하면 전체 지연시간은 L/R이 됨

 

 

1출발지가 패킷 1을 송신하기 시작한 순간부터 목적지 노드가 3개의 모든 패킷(1, 2, 3)을 수신할 때까지 경과된 전체 시간을 계산해보자.

  • 0 초 : 출발지가 패킷 1을 전송하기 시작
  • L/R 초
    라우터는 패킷 1을 수신 완료, 이를 전송하기 시작
    출발지는 패킷 2를 전송하기 시작
  • 2L/R 초
    라우터는 패킷 2를 수신 완료, 이를 전송하기 시작
    목적지는 패킷 1 전체를 수신 완료
    출발지는 패킷 3을 전송하기 시작
  • 3L/R 초
    라우터는 패킷 3를 수신 완료, 이를 전송하기 시작
    목적지는 패킷 2 전체를 수신 완료
  • 4L/R 초 : 목적지는 패킷 3 전체를 수신 완료

따라서 저장-후-전달 전송 방식을 채택한다면 목적지는 4L/R 초에 3개의 모든 패킷을 수신하게 된다.

N=라우터 개수

종단 간 지연 = (N*L) / R

 


큐잉 지연(queuing delay)과 패킷 손실

각 패킷 스위치는 접속된 여러 개의 링크를 갖고 있다. 각 링크에 대해 패킷 스위치는 출력 버퍼(output buffer)를 갖고 있으며 그 링크로 송신하려고 하는 패킷을 저장하고 있다. 출력 버퍼는 패킷 교환에서 중요한 역할을 한다. 도착하는 패킷이 한 링크로 전송되어야 하는데 그 링크가 다른 패킷을 전송하고 있다면 도착하는 패킷은 출력 버퍼에서 대기해야한다. 이것을 큐잉 지연(queuing delay)라 한다. 

가변적이고 네트워크 혼잡 정도에 따른다. 버퍼의 크기가 유한하기에 패킷 손실(packet loss)가 생길 수 있다. 이 이유는 저장공간이 없기 때문이다. 몰리면 trffic 지연이 생긴다.

여기서 라우터는 수신한 패킷을 15 Mbps의 링크로 전달하고 있다.

만약 짧은 기간 동안 라우터에 도착하는 패킷의 전송률이 15 Mbps를 초과하게 된다면, 링크의 출력 버퍼에 패킷들이 큐잉될 것이다.

 

포워딩 테이블과 라우팅 프로토콜

라우터는 접속된 통신 링크 중 하나로 도착하는 패킷을 받아서 접속된 통신 링크 중 다른 링크로 그 패킷을 전달

그러나 라우터는 어떻게 그 패킷을 어느 링크로 전달해야하는지를 결정할까???

 

IP 주소

  • 모든 종단 시스템은 IP 주소를 갖는다.
  • 출발 종단시스템 패킷을 목적지 종단 시스템으로 보내고자 할 때, 출발지 패킷의 헤더에 목적지 IP주소를 포함한다.
  • 계층적 구조를 가진다.

포워딩 테이블(forwarding table)

각 라우터는 목적지 주소 또는 목적지 주소의 일부를 라우터의 출력 링크로 매핑하는 포워딩 테이블을 가지고 있다.

  1. 패킷이 라우터에 도착한다.
  2. 라우터는 패킷의 IP 주소를 조사한다.
  3. 해당 목적지 주소를 이용하여 포워딩 테이블을 검색한다.
  4. 그 패킷을 출력 링크로 보낸다.
 

라우팅 프로토콜(routing protocal)

인터넷은 자동으로 포워딩 테이블을 설정하는 라우팅 프로토콜이 있다. => 차후에 다시 배운다.

 


 

1.3.2 회선 교환(circuit switching)

  • 회선 교환 네트워크에서는 종단 시스템 간에 통신을 제공하기 위해 경로상에서 필요한 자원(버퍼, 링크 전송률)은 통신 세션(session) 동안에 확보 또는 예약(reserve)된다.   패킷 스위치와의 차이 -> 패킷 스위치는 예약이 되지 않는다.
  • 세션 메시지는 온디맨드(on-demand) 방식으로 자원을 요청하여 사용한다.
  • 전화에 적합하다
  • No Sharing -> 공유하지 않고 전용으로 쓴

따라서 통신 링크에 대한 접속을 위해 큐에서 대기해야 할 수도 있다.

 

연결  : 송신자와 수신자 간의 경로에 있는 스위치들이 해당 연결 상태를 유지해야 한다.

 

  1. 송신자가 정보를 보내기 전, 네트워크는 송신자와 수신자 간의 연결을 설정해야 한다.
  2. 네트워크가 회선을 설정할 때, 그 연결이 이루어지는 동안 네트워크 링크에 일정한 전송률을 예약한다.
  3. 주어진 전송률이 송신자-수신자 연결을 위해 예약되기 때문에, 송신자는 수신자에게 보장된(guaranteed) 일정 전송률로 데이터를 보낼 수 있다.

 

한 호스트가 인터넷 같은 패킷 교환 네트워크를 통해 다른 호스트로 패킷을 보내고자 하는 경우에는 어떤 일이 발생할까

  1. 회선 교환과 마찬가지로 패킷은 일련의 통신 링크를 통해 전송된다.
  2. 패킷 교환은 링크 자원을 예약하지 않고 네트워크로 보내진다. 만약 그시간에 링크로 다른 패킷들이 전송되어야 해서 혼잡하다면 그 패킷은 전송 링크의 송신 쪽 버퍼에서 기다려야 하고 지연이 발생한다

패킷 스위칭이랑 회선 스위칭의 장단점과 차이점 비교

패킷 교환(Packet Switching):

  • 장점
  1. 패킷 교환은 네트워크 자원을 공유하여 여러 사용자 간에 데이터를 효율적으로 전송
  2. 데이터는 패킷 단위로 전송되므로, 전송되는 데이터의 크기나 형태에 제한이 없습니다. 이는 다양한 종류의 데이터를 처리하는 데 유리
  3. 패킷 교환은 네트워크 자원을 다수의 사용자가 공유하므로 자원의 효율적인 사용
  4. 정보가 몰릴때 유용함
  5. 불연속적인 데이터 전송때 유리
  • 단점
  1.  패킷 교환은 패킷을 전송하기 위해 경로를 선택해야 하므로, 경로 선택 및 패킷 전송에 시간이 소요
  2. 패킷이 네트워크를 통해 전달될 때 손실될 수 있습니다. 이는 패킷이 도착지에 도달하기 전에 중간에 손실되거나 손상될 수 있음

회선 교환(Circuit Switching):

  • 장점
  1. 회선 교환은 연결이 확립된 후에는 실시간 통신을 제공할 수 있습니다. 이는 음성 통화 및 실시간 비디오 통화와 같은 응용 분야에 적합
  2. 회선은 호의 전체 기간 동안 사용자에게 할당되므로, 전송 중에 패킷이 손실되거나 지연되는 것이 없음
  • 단점
  1. 회선 교환은 호의 전체 기간 동안 리소스가 예약되므로, 사용자가 통화 중이 아닐 때에도 리소스가 낭비될 수 있음
  2. 확장성이 제한될 수 있슴
  • 차이점
  1. 자원 사용 방식:
    • 패킷 교환은 네트워크 자원을 패킷 단위로 공유하여 사용함
    • 회선 교환은 연결이 확립된 후에는 전체 회선이 호에 할당되어 자원을 공유하지 않음
  2. 신뢰성 및 실시간 통신:
    • 회선 교환은 연결이 확립된 후에는 실시간 통신을 제공하고, 패킷 손실이나 지연이 없음
    • 패킷 교환은 패킷을 전송하는 동안에는 패킷 손실이 발생할 수 있으며, 실시간 통신에는 적합하지 않을 수 있음
  3. 자원 활용 및 유연성:
    • 패킷 교환은 자원을 효율적으로 공유하고, 다양한 종류의 데이터를 처리할 수 있음
    • 회선 교환은 연결된 호에 대해 전용 자원을 할당하여 자원을 효율적으로 사용하지만, 유연성이 제한됨

회선 교환 네트워크에서의 다중화

주파수 분할 다중화(Frequency-Division Multiplexing, FDM)

시분할 다중화(Time-Division Multiplexing, TDM)

 

주파수 분할 다중화(Frequency-Division Multiplexing, FDM)

 링크는 연결되는 동안 각 연결에 대해 주파수 대역을 고정 제공한다. = 대역폭(bandwidth)

 

시분할 다중화(Time-Division Multiplexing, TDM)

TDM 링크는 시간을 일정 주기의 프레임으로 구분하고, 각 프레임은 고정된 수의 시간 슬롯(Time Division slot)으로 나뉜다. 네트워크가 링크를 통해 하나의 연결을 설정할 때, 네트워크는 모든 프레임에서 시간 슬롯 1개를 그 연결에 할당한다.
전송률 : 한 슬롯 안의 비트 수 × 프레임 전송률

 

 

 

728x90