본문 바로가기
컴퓨터네트워크

[컴퓨터네트워크1] 1-3 Network core : packet/circuit switching, internet structure

by sum_mit45 2023. 10. 31.
728x90
반응형

출처: 최종원 교수님, 컴퓨터네트워크1 수업,

Computer Networking:  A Top-Down Approach Featuring the Internet by James F.Kurose and Keith W.Ross 8th,

컴퓨터 네트워킹 하향식 접근 8판

The Network Core

  • 라우터들이 그물망(mesh) 처럼 서로 연결되어 있다.
  • 링크와 스위치의 네트워크를 통해 데이터를 이동시키는 방식에는 회선교환과 패킷교환 있다.

Packet-Swtiching : 패킷 교환

 패킷 교환(packet-switching) 이란 host애플리케이션 계층 메시지packet으로 분할하고, source와 destination 사이에서 각 패킷은 통신 링크패킷 스위치(라우터, 링크 계층 스위츠)를 거치게 된다. 각각의 패킷이 full link capacity 로 전송된다.

 transmission delay: 패킷은 링크의 최대 전송률과 같은 속도로 각각의 통신 링크에서 전송된다. 따라서 R bit/s의 속도로 링크에서 L비트의 패킷을 송신한다면, 그 패킷을 전송하는 데 걸리는 시간 L/R이다.

(1) store-and-forward (저장 후 전달)

  • 저장 후 전달 전송 방식은 스위치(라우터)가 출력 링크로 패킷의 첫 비트를 전송하기 전에 전체 패킷을 받아야 한다.
  • 출발지로부터 목적지 노드까지 N개의 링크로 구성되고, 각각은 전송률이 R인 경로를 통해 하나의 패킷을 전송하는 일반적인 경우 (N-1개의 라우터가 있다) → d종단간 지연 = N*(L/R)
  • 💡 라우터의 기능은 입력되는 패킷을 출력 링크로 교환하는 것이기 때문에, 보통 여러 개의 링크를 가진다.

(2) queuing delay, loss (큐잉지연과 손실)

  • 각 링크에 대해 패킷 스위치(라우터)는 출력버퍼(출력 큐)를 갖고 있으며 그 링크로 송신하려고 하는 패킷을 저장하고 있다. 도착하는 패킷이 한 링크로 전송되어야 하는데, 그 링크가 다른 패킷을 전송하고 있다면 도착하는 패킷은 출력 버퍼에서 대기해야한다.
  • 따라서 저장 후 전달 지연 뿐만 아니라, 패킷은 출력 버퍼에서 큐잉지연을 겪게 된다.
  • 버퍼 공간의 크기가 유한하기 때문에, 도착하는 패킷은 버퍼가 전송을 위해 대기 중인 다른 패킷들로 꽉 차있는 경우를 당할 수 있다. 이 경우 패킷 손실(packet loss)이 발생한다.

(3) forwarding table 과 routing protocol

라우터는 접속된 통신 링크 중 하나로 도착하는 패킷을 받아서 접속된 통신 링크 중 다른 링크로 패킷을 전달하는데, 어느 링크로 전달해야 하는지를 어떻게 결정할까?

  1. source에서 destination으로 패킷을 보내려고 할때, 출발지는 패킷의 헤더에 목적지의 IP주소를 포함한다. (인터넷의 모든 종단 시스템은 IP주소를 갖는다)
  2. 패킷이 네트워크의 한 라우터에 도착하면, 라우터는 패킷의 목적지 주소의 일부를 조사하고 그 패킷을 이웃 라우터로 전달한다. → 각 라우터는 목적지주소를 라우터의 출력 링크로 매핑하는 forwarding table을 가지고 있다.
  3. 인터넷은 자동으로 포워딩 테이블을 설정하는 데 이용되는 여러 특별한 routing protocol을 가지고 있다.

forwading은 loacl action이고, routing은 global action이다.

Circuit-Swtiching: 회선 교환

  • 종단 시스템 간에 통신을 제공하기 위해 경로상에 필요한 **자원(버퍼, 링크 전송률)**은 통신 세션 동안에 확보 또는 예약(reserve) 된다. ex) 전통적인 전화망
  • 이 회선은 사용하지 않더라도, 예약된 것이라면 다른 사람이 쓸 수 없다.
  • 요즘 데이터망에서는 virtual circuit switching을 사용한다. → end 끼리는 알지만, 그 중간 과정들은 전달되지 않는다.
  1. 종단 간 연결(end-to-end connection) : 송신자가 정보를 보내기 전에 네트워크는 송신자와 수신자 간의 연결을 설정 → 송신자와 수신자 간의 경로에 있는 스위치들이 해당 연결 상태를 유지해야 하는 연결이다. (=네트워크가 회선을 설정한다.)
  2. 회선을 연결하는 동안, 네트워크 링크에 일정한 전송률을 예약한다. → 주어진 전송률이 송신자-수신자 연결을 위해 예약되므로, 송신자는 수신자에게 보장된(guaranteed) 일정 전송률로 데이터를 보낼 수 있다.

(방법1)  FDM (Frequency Division Multiplexing, 주파수 분할 다중화)

주파수 분할 다중화 예시) 4명의 유저가 있는 경우

  • FDM에서 링크를 통해 설정된 연결은 그 링크의 주파수 스펙트럼을 공유한다. (= 각 연결에 대해 주파수 대역을 고정 제공한다.)
  • 전화망 대역폭(bandwidth): 일반적으로 4kHz(4000Hz 혹은 초당 4000사이클)폭을 갖는다.
  • FM 라이도 방송 대역폭: 88MHz ~ 108MHz

(방법2)  TDM (TimeDivision Multiplexing, 시분할 다중화)

시분할 다중화 예시) 4명의 유저가 있는 경우

  • 네트워크가 링크를 통해 하나의 연결을 설정할 때, 네트워크는 모든 프레임에서 시간 슬롯 1개를 그 연결에 할당한다. 이 슬롯은 그 연결을 위해 사용되도록 할당되고, 그 연결의 데이터를 전송하기 위해 모든 프레임에 하나의 시간 슬롯을 갖게 된다.
  • 시간을 일정 주기의 프레임으로 구분하고, 각 프레임은 고정된 수의 시간 슬롯으로 나눈다.
  • TDM 회선의 전송률 = 한 슬롯 안의 비트 수 * 프레임 전송률
    ex) 링크가 초당 8000프레임을 전송하고 각 슬롯이 8비트로 구성된다면 회선의 전송률은 64 kbps이다.

Packet-Swtiching : 패킷 교환 vs Circuit-Swtiching: 회선 교환

 현재는 패킷 교환더 많은 사용자가 네트워크를 쓸 수 있게 해주기 때문에 더 많이 사용한다.

 위의 예제에서 보는 것처럼, 회선 교환이 동시에 10명의 사람 배정이 가능하다고 하면, 패킷 교환에서 11명 이상의 사람이 동시에 active 할 확률은 0.0004이기 때문에, 최대 35명까지 이용가능하다. 

 그렇다고 항상 패킷 교환이 유리한 것은 아니다. 데이터가 갑자기 집중적으로 한번씩 소규모로 발송되는 경우에는 패킷 교환이 유리하다. 하지만 과하게 많은 사용자가 몰리는 경우에는 exponential 하기 delay가 발생할 수 있기 때문에, circuit-switching 이 더 적합하다. 

network of networks: 네트워크의 네트워크

네트워크 구조를 표현한 이미지

  • 종단 시스템(host)이 access Internet Service Providers(ISPs)를 통해 인터넷과 연결한다.

전세계의 많은 access ISPs가 주어졌을 때, 어떻게 그들을 연결할 수 있을까? 가장 쉽게 생각하는 방법은 모든 access ISPs 들을 각각 연결해주는 것이다. 이 방법은 O(N^2)의 연결을 만들어낸다. 따라서 아래와 같은 방법으로 네트워크 구조가 발전해온다.

  1. 네트워크 구조1: 모든 접속 ISP를 하나의 글로벌 ISP와 연결한다.
    • 접속 ISP가 글로벌 ISP에게 요금을 지불하기 때문에 접속 ISP는 고객이고, 글로벌 ISP는 제공자이다. 글로벌 ISP를 구축하고 운영한다면, 다른 회사가 자신의 ISP를 구축하고 경쟁한다.
  2. 네트워크 구조2: 수십만 개의 접속 ISP와 다중의 글로벌 ISP로 구성된다.
    • 상위층에 글로벌 통과 서비스 제공자가 있고, 하위층에 접속 ISP가 있는 형태의 2계층 구조.
    • 글로벌 ISP끼리 서로 연결을 해야 한다. 
  3. 네트워크 구조3: 다중 계층구조
    • 여러 경쟁적인 1계층 ISP들이 존재할 뿐만 아니라, 한 지역에 경쟁적인 지역 ISP들이 있다.
    • 계층 구조의 각 레벨에 고객-제공자 관계가 있다. 1계층 ISP는 아무에게도 지붙X
  4. 네트워크 구조4: 접속 ISP, 지역 ISP, 1계층 ISP, PoP, 멀티 홈, 피어링, IXP로 구성
    • PoP(Point of Presence): 제공자의 네트워크 내에 있는 하나 혹은 그 이상의 라우터 그룹
    • 멀티홈: 1계층 ISP를 제외한 모든 ISP는 멀티홈, 즉 둘 혹은 그 이상의 제공자 ISP에 연결하도록 선택할 수 있다.
    • 트래픽 비용을 줄이기 위해, 인터넷 계층 구조의 같은 계층에 있는 가까운 ISP들은 피어링한다. 즉, 이들 간에 송수신되는 모든 트래픽을 상위 계층 ISP를 통하지 않고 직접 송수신할 수 있도록 자신들의 네트워크를 서로 직접 연결한다. 이 방법으로는 회사끼리 협의하에 맺는 peering link와 따로 맺어주는 Internet exchange point(IXP) 의 두가지 방법이 있다. 
  5. 네트워크 구조5: 네트워크 구조 4 위에 콘텐츠 제공자 네트워크를 추가함으로써 구축한다.
    • Google, Microsoft, Akamai 등

Overlay network: physical network 위에 가상의 network를 추가하는 것

728x90
반응형