juuuding

[정보통신공학] CH 9 WAN Technology and Protocols 본문

컴퓨터공학/정보통신공학

[정보통신공학] CH 9 WAN Technology and Protocols

jiuuu 2023. 5. 21. 03:39

* 이번 ch는 장거리 통신에 대해 공부한다. 장거리 통신인 WAN은 소유주가 많기 때문에 traffic의 예측이 불가능하고 그렇기 때문에 provisioning을 정확히 할 수 없기 때문에 느리다. 또, 예측이 불가능하기 때문에 높은 transmission rate을 사용한다. 

 

 

[Station, Node, Communication network & Path]

 (1) Stations

  - End devices (컴퓨터, 터미널, 폰...)

  - host, end node : 맨 끝에 존재하며 L1~L5를 모두 가지고 있음 (data를 생성해서 보내고 싶거나, data를 받고 싶은 주체)

 

 (2) Nodes

   - 중간 네트워크 장비라는 뜻으로 사용 -> Intermediate node, network, exchanges(cs), router(ps), L3까지 존재한다

  - stations 사이 communication(path)를 제공하는 목적

  - node는 data의 내용과 관련이 없다; 오히려 node는 switching(L1), forwarding(L3), routing(e2e path 계산)과 관련이 있다

  - node는 다른 노드나 station과 연결되어 있다. 

   * node-to-node links는 보통 multiplexed (FDM, TDM), Statistical TDM(Packet), Synchronous TDM(Circuit)

 

 (3) Communication network

  -  node와 connections(links)의 모음. 두 개의 다른 switching tech를 사용

   -> Circuit switching, Packet switching

 

 (4) Path

  - network node 사이(거쳐가는 중간 node들)에 link가 순서대로 list up 해놓은 것

   * e2e path: 두 stations를 연결하는 link의 list

 

[Switching Networks]

 - 장거리 전달은 중간 switching node network를 거쳐 이루어짐

 - data는 node에서 node로 switch되면서 route됨

 - network는 대개 완전 연결되어있지 않음

  √ 모든 가능한 노드 쌍들이 direct link가 있지는 않다

  √ 각 station 쌍을 위해 네트워크에 한 가지 이상의 path들이 있다

  √ redundant한 path들은 reliability를 위해 존재한다

  ex) 한 customer ISP가 두 개 이상의 provider ISP에 연결될 수 있는데, 이런 네트워크를 Multi-homed ISP라고 함

 

[Simple Switching Network]

 - node들은 transmission link에 의해 또 다른 node들에 연결돼 있음

 - 각 station은 node에 붙어있음

 - 노드의 집합은 switched communication network이다

 

 

 Circuit switching

 

[Circuit Swithching]

(1) 두 station 사이 Dedicated communication path  (자원 예약)

 - data 전달 전 미리 설정되어 있어야 함

(2) 3단계 (connection set-up -> data transfer -> disconnect)

① 두 stations 사이 Circuit establishment (connection set-up)

  √ 두 쌍의 노드 사이 channel capacity는 예약되어 있어야 함

    - 요청된 연결을 다루기 위해 각 노드는 switching capacity (channel capacity)을 이용가능해야 함

    - 노드는 route할 수 있어야 함

data 전달은 dedicated path를 따라 이루어져야함

  √ 일반적으로 연결은 full-duplex임

Circuit disconnect는 두 station 중 한군데에서 하면 됨

  √  연결을 끊을 때 자원을 다시 가져오기 위해서 신호를 전파함

 

[Good aspects of circuit switching]

(1) voice 신호 전달에 효율적

  √ voice 전달의 핵심 요구사항 (대화)

   - 전달 지연 X, 지연 변화 X 

   - 일정한 신호 전달 속도가 유지되어야 함

   - 받는 신호의 질은 충분히 높아야 함 -> 다양한 디지털 장치가 연결돼 있는 오늘날에는 적합하지 않음

(2) 일단 연결만 되면, 전달은 "transparent"함

  √ circuit이 설정만 된다면, direct connection처럼 보임

  √ 노드 사이 특별한 logic이 필요하지 않음

  √ user 정보는 고정된 data 속도로 전달됨. (transmission, queueing, processing) delay 없이. only propagation delay

 

[Bad aspects of circuit switching]

(1) 비효율적

  √ Channel capacity는 연결된 동안 특정 station 쌍에 dedicate 되어있음. 

    - data가 없을 때, capacity 낭비

    - 간헐적이고 bursty한 internet traffic에 비효율적

(2) 미리 set up을 해두는 것은 시간이 걸림(delay)

 

[Application of circuit switching]

 - 원래 voice traffic을 위해 개발되고, modem을 통한 data 전달에 사용됨

 - Private branch exchange(PBX) : 내선전화

 

[Public Circuit Switching Network (PSTN)]

 

 

[Telecoms Components]

(1) Exchanges

  √ network 안의 switching center

  √ End office(CO) - subscribers 지원

(2) Trunks

  √ exchange 사이 branches

  √ multiplexed (FDM or TDM)

 + 중간에 exchange 끼리 연결

(3) Subscibers

  √ 네트워크에 붙어 있는 장치

(4) Subscriber line

  √ subscriber과 network 사이 link

    - Local loop 또는 Subscriber loop로 불림

  √ 전형적 media: twisted-pair wire

  √ Few km ~ few tens of km

 

[Circuit switching: FDM versus TDM]

* node - node 연결하는 link는 multiplexed (한번에 여러개 처리)

* Multiplexing = 한 물리적 link에 대한 n개의 logical channel

 

(1) FDM (Frequency Division Multiplexing)

 

(2) TDM (Time Division Multiplexing)

 

 

[Change of PSTN]

- PSTN(Circuit Switching)을 internet에 연결하려는 s/w인 soft-switching을 도입하면서, PSTN에 비해 Internet의 one of application처럼 됨. 

 

 

 

 Softswitching

 

[Softswitch architecture]

(1) circuit-switching 기술의 가장 최근 trend

  - original circuit switch에서는, 가장 복잡한 부분이 routing하고 processing하는 소프트웨어를 조절하는 곳. 이곳은 하드웨어와 통합된 특정 소유에서만 작동

(2) 특수 소프트웨어를 실행하여 스마트폰 switch로 만드는 범용 컴퓨터

* 결론적으로 특정 H/W에서만 맞게 동작하던 S/W가 모든 H/W에서 사용가능하게 바뀌었음

(3) circuit switch보다 기능이 좋음

(4) circuit switch보다 비용이 저렴

 

[Traditional Circuit Switching v.s. Softswitch]

- circuit switch에서는 call-establishment, billing, routing, information-exchange 기능이 합쳐져 있음 

- softswitch에서는 call processing  기능과 physical-switching 기능을 분리함

 + Media gateway (MG) : physical switching function

 + Media gateway controller (MGC) : call processing logic

 

 

 

 Packet switching

 

[Packet Switching Principles]

(1) circuit switching은 voice를 위해 고안된 것

  - 자원들은 특정 call에 제한

  - data connection이 idle한다면 비효율적

  - data rate이 고정되어 있음

   * 두 ends가 같은 속도로만 작동되어야 한다면, 다양한 컴퓨터의 상호 연결에서 네트워크의 utility를 제한함

(2) Packet switching는 위의 문제들(cs의 문제)에 접근하고 간헐적이고 bursty한 data를 전달하기 위해 고안됨

 

[Packet Switching Technique]

(1) data는 작은 packet으로 쪼개져 전달됨

  √ 긴 msg는 여러개의 pck으로 쪼개짐

   - msg 길이 > MTU (Max Transmission Unit)

   - host나 IPv4 router에서 쪼개짐

  √ 각각의 pck은 user data와 control info를 포함

   - IP header : control info (라우팅 주소) 

   - IP payload : user data

   - pack은 한번에 하나씩 네트워크로 전달됨 (Store&Forward)

   - pck이 받아졌을 때, 잠시 저장하고 네트워크 안의 다음 노드 넘긴 후, dst host로 도착

(2) packets은 두가지 방법으로 다루어짐

 - Datagram packet switching (DPS) -> Internet

 - Virtual Circuit Packet Switching (VCPS) : cs와 ps의 정점

 

[Two types of Virtual Circuit (VC)]

(1) External VC

  - 네트워크를 통한 두 station 사이에 logical connection

 * logical connection: 둘이서 주고 받기 전에 TCP가 자기들끼리 data를 주고 받아 상위에 있는 process 인식하게 함  

  +중간의 router들은 전혀 알지 못함

  - external VC와 datagram-style network와 함께 사용 가능

  - TCP (connection oriented. DPS에서 하는 것)

 

(2) Internal VC

  - 두 station 사이에 네트워크를 통한 미리 계획된 경로(preplanned route)

  - ATM, FR

 + IPs와 IPd 쌍에 관한 정보 기록

 

[(Internal) Virtual Circuit (VC)]

(1) 각 물리적 wire은 많은 "virtual" circuit을 carry

(2) VC identifier (VCID) (자원) = (VPI, VCI) -> VCID를 더 줄 수 없으면 call blocking

  + 가상 회선, 경로로 라우팅하기 위해 사용되는 중요한 매개 변수

(3) VC는 data를 전달하기 전에 설정됨

  - e2e path는 인접한 스위치 사이의 VCID 리스트

   + In-order 전달

   + software path - 자원을 예약할 필요 X

(4) VCID 안을 기반으로 data는 forward

* VCI (Virtual Channel Identifier) : virtual circuit 식별하는데 사용되는 값

* VPI (Virtual Path Identifier): virtual path를 식별하는데 사용되는 값. 여러 개의 virtual circuit을 그룹화하는 논리적 경로

 

[DPS and VCPS: Similarities]

- 하나의 큰 msg를 여러 작은 pck으로 쪼개어 전달

- "Store and Forward" (address 기반)

 + (DPS) Destination IP addr, (VCPS) VCID

- buffer space를 꼭 가지고 있어야함. pck을 일시적으로 저장하기 위해서

 + 다수의 pck은 같은 목적지에 도착할 것임. output buffer에 동시 도달

 + Queueing delay는 라우터/스위치의 output buffer에서 발생

 + pck은 라우터의 버퍼링 때문에 delay, lost될 수 있음

- 4개의 delay 발생

- "statistical TDM" at L1 (multiplexing)

 + pck은 고정된 패턴없이 배치됨

 + 자원 예약이 없음

 

(1) Store-and-Forward

 - Store

  + 전체 pck(header+payload)가 input buffer에 저장됨 

 - Process

  + IPv4, IPv6 header에 process 기능

 - Forward

  + forwarding table을 찾기

  + input buffer -> output buffer 스위칭

  + output buffer에서 기다림 (Queueing delay)

  + 다음 router/switch로 전달

 

(2) Four delays (순서*)

 ① Processing delay at input buffer

   - data를 switch할 때 node가 process해주어야함 (L2, L3)

 ② Queueing delay at output buffer

   - 라우터의 큐에서 기다려야함

 ③ Transmission delay at output buffer와 link 사이

   - data block이 나가서 보내질 때까지의 시간 

 ④ Propagation delay over link

   - 한 노드에서 다른 노드로 propagate될 때까지의 시간 (대개 무시 가능)

 

[DPS) Out-of-order data delivery]

- 각각의 pck은 이전 pck의 참고 없이 독립적으로 다루어짐

→ 각각 pck은 각 router에서 독립적으로 route

→ 같은 msg에 속한 pck은 독립적인 길을 사용함

→ pck은 순서가 뒤죽박죽으로 도착

≫ 그럼 순서 재배치는 어디에서 할까?

  - dst host(e2e)에서 L4 (TCP)가

  - dst host 또는 중간 노드에서 L2가 (ARQ)

 

[DPS delivery]

- 각 노드는 traffic line failure시 인접 노드로부터 받은 정보(real time info)를 고려하여 패킷 경로에서 다음 노트 선택 

- 같은 목적지를 가진 pck은 같은 경로로 가지 않음. 나갈 때 순서로 다른 순서로 도착할 것

- dst는 잘못된 순서와 loss를 감지하고 다음 dst로 전달하기 전에 복구해줘야 함 (TCP at(L4))

 

[3 steps of VCPS) Call set-up before sending data]

Step 1) Call set-up - src와 dst 사이 미리 계획된 e2e path가 pck를 보내지기 전에 설정 

 (1) 다른 station으로 가는 station은 하나 이상의 VC를 가짐

 (2) call request/accept pck은 연결 설정

   - 노드에 VCID를 할당함으로써 모든 msg(pck)을 보냄 

   - circuit switch와 다르게 link bandwidth를 고려하지 않아도 됨

    + cs와 달리 BW(자원) 예약 X. dedicated path X.  

    + 다른 VC의 pck은 다른 line 공유

    + pck은 중간 노드의 큐에서 buffer되고 delay 됨 -> DPS처럼 data 전달되는 동안 lost 발생할 수도 있음

  - congestion, topology변경이 발생했을 때도 src와 dst 통신 중에도 변경되지 않음

    + cs처럼 In-order 전달이지만 flexibility가 없음

 (3) circuit switching과 같이 call blocking이 발생 but 다른 이유

   - VCPS) call set-up msg가 사라졌을 때 (<- 네트워크 혼잡 / 이용가능한 VCID 없음 )

   - CS) 예약된 BW(자원) 부족

 

Step 2) Data delivery - 한번 경로 설정이 되기만 하면, station 사이 모든 pck은 같은 경로를 따름

 (1) DPS보다 processing delay가 적음. pck이 전달될 때 routing 결정이 없기 때문에 (데이터 전달 전 딱 한번 결정)

 (2) forwarding은 짧은 VCI 기반

 (3) pck은 buffer, queue됨

 

Step 3) Disconnection - data 전달이 끝난 후, 삭제를 요청하는 circuit

 

[VCPS delivery]

- 미리 준비된 경로는 pck이 보내지기 전 설정됨

- 경로가 설정되기만 한다면, pck은 같은 경로를 따름 (융통성 X)

 

[(VCPS) Frame Relay (FR)]

- 한 msg를 여러 frame으로 쪼갬

- frame size는 다양함

- 높은 data 전송 속도(그 당시), 낮은 에러율

 + FR 전에, pck switching은 에러를 보장하기 위해 큰 overhead를 가짐 -> 에러율이 급격하게 줄면서 overhead가 작아짐

- 데이터 전송 속도: ~2Mpbs

 

[(VCPS) Asynchronous Transfer Mode (ATM)]

- frame relay의 진화

- cell relay라고 함

- pck 길이 고정, cell이라 불림

- 에러 통제를 위한 작은 overhead

- 데이터 전송 속도: 10Mbps ~ Gbps

- 각 channel에 다수의 virtual channel이 요구에 따라 동적으로 set될 수 있게 함

* ATM만 특별히 QoS 지원

 

 

 

 

 

[Advantages of packet switching over circuit switching]

(1) line 효율성이 좋음

  - 노드와 노드를 연결하는 한 link가 많은 pck을 공유할 수 있기 때문 

  - pck은 가능한 빨리 queue되고 전달되기 때문

(2) 데이터 속도 변환

  - local node를 연결하는 각 station은 각자의 속도가 있음 

  - 속도를 동일하게 하기 위해 필요한 경우에는 노드 버퍼 데이터

  - 다른 데이터 속도를 가진 두 station은 pck을 교환할 수 있음 (layer에 buffer가 필요한 protocol들이 있으면 양쪽 끝의 데이터 속도가 다른 것도 지원 가능)

(3) pck들은 네트워크가 바쁠 때도 accept 가능

  - 전달 delay가 증가

(4) 우선순위 사용

  - 높은 우선 순위를 가진 pck이 먼저 전달, 더 적은 delay를 경험

 

[Event timing for Circuit and Packet Switching]

 

 

[Comparisions of Communication Switching Techiniques]