본문 바로가기
CS/Computer Networking

[Computer Networking] 2. Chapter 1 : Roadmap

2021. 7. 18.
반응형

인터넷은 core와 edge로 나눌 수 있음

인터넷의 구성요소 Host, Router or Switch, Link (router-router, host-router 연결)

edge에는 host가 연결돼 있음

host와 core의 router 사이에 access network가 있음

access network : home network, 기관

home network : access point, desktop - router/ethernet switch - 전화 회사 DSL / 케이블 회사 cable (HFC) - internet (core의 router)

기관/school : access point, desktop - ethernet switch - 학교 전체를 묶어주는 Router - 인터넷 회사의 Router

 

Host : network application을 hosting하고 있으므로 host라고 함

network application은 다른 application과 달리 다른 컴퓨터에 있는 상대에게 메시지를 주고 받음

host에서는 사용자의 application message가 발생함 → message를 packet 이라고 불리는 chunk로 잘라 access network에 연결되는 link로 내보냄

transmission rate R

packet transmission delay = time needed to transmit L-bit packet into link = L (bits) / R (bits / sec)

 

link의 종류 2가지

1) guided media : 물리적인 wire 사용. copper, fiber, coax

  • copper : Ethernet cable
  • fiber, coax : HFC (fiber : head end들을 연결, coax : 링크들 연결) (fiber가 coax보다 bandwidth 훨씬 높으므로)

2) unguided media : radio, WiFi, cellular

 

twisted pair (TP) : copper cable

coaxial cable : broadband (bandwidth 높음)

fiber optic cable : light pulses를 전달. (copper과 coax는 electronic signal 전달)

  • transmission rate 매우 높음
  • low error rate (주변 noise에 영향을 별로 받지 않음 → 먼 거리를 이동해도 signal이 약해지지 않음 (transmission bit error가 낮음))

 

radio

no physical "wire"

  1. reflection : signal이 벽을 만나서 여러 방향으로 튀어 약해짐
  2. obstruction by objects : 장애물에 의해 signal이 전진하지 못하고 막힘
  3. interference : 주변 noise에 민감, radio signal끼리 interfere.

장점 : 물리적인 link를 설치하지 않고도 통신을 할 수 있음

radio link types:

terrestrial microwave

LAN (ex Wifi) - 11 Mbps (802.11b), 54 Mbps (802.11g), 300m 이내

wide-area (ex cellular) : 3G cellular - ~ few Mbps, LTE - 10Mbps 이상

satellite

  • geostationary satellite : 위성을 더 높이 띄우는 경우, coverage area 큼, end to end 통신시에 delay가 길다.
  • low-earth orbiting(LEO) satellite : 위성을 더 낮게 띄우는 경우

 

지금까지는 network edge를 살펴봤음 (end systems, access networks, links)

network core : packet switching, circuit switching, network structure

router와 switch의 목적 : source에서 destination로 유저의 application message를 전달하는 것

전달하는 방식 : packet switching, circuit switching

 

 

Circuit Switching : 전화 네트워크에서 사용하던 방식

메시지 전달하려면 반드시 call이 있어야 함

유저가 call하면 call set up

call set up시 일어나게 되는 것

  1. 어떤 라우터/스위치 경로를 정할 것인지
  2. resource reservation

파이프에 연결된 것처럼 유저 메시지 bits가 밀려 내려옴

Circuit switching에서 critical한 것은, 네트워크의 자원을 분할하는 방식이 있어야 함. 한 사용자가 link를 예약하면 자원이 남아도 다른 사용자가 그 link를 사용할 수가 없음 → 분할

FDM : frequency로 나눠서 할당

TDM : 링크에 가용된 frequency 전체를 사용자들이 사용할 수 있게 하되, 시간을 잘라서 할당

 

citcuit switching은 전화 네트워크에서는 적합했지만, 데이터 네트워크에서는 X

전화를 call 하면 끊을 때까지 continuous, but 컴퓨터할 때는 통신이 intermittent

citcuit switching은 자원이 할당되면 그 자원을 다른 사용자가 share할 수 없다, 데이터가 흐르지 않고 있으면 자원 낭비됨 → Packet switching

 

 

Packet Switching

  1. 예약이 없다 (no call set up = no resource reservation) → 필요가 발생한 그때그때 resource 사용하게 함, ex 전달할 데이터가 생김 → link가 free임 → link 대역폭 전체를 사용해서 전달, 만약 누군가 먼저 link 사용하고 있으면 사용 끝날 때까지 기다린 후 전달 한 데이터가 link 차지하면 link 대역폭 전체를 사용

긴 메시지가 한 링크를 차지하고 있으면 비효율적 → application message를 packet이라는 chunk로 자름

패킷에는 목적지 주소가 명시돼 있음

라우터는 패킷을 받으면 목적지 주소를 확인

→ 각 라우터는 패킷 전체가 도달할 때까지 받음. 받으면서 동시에 보낼 수 X, 다 받으면 목적지 주소 확인해서 link를 결정하고 forwarding함

패킷 전체를 완전히 받아야 패킷에서 목적지 주소를 확인할 수 있기 때문에 라우터에 store한 다음에 forward함.

이 링크가 가용하지 않으면 store하는 buffer 안에 대기해야 함. → packet switching에서는 queueing delay가 발생할 수 있음

라우터가 목적지로 뽑아주는 속도보다 패킷이 흘러들어오는 속도가 더 빠르면 store하는 buffer에 패킷이 쌓임

왜냐하면 자원 reserve하지 않기 때문 → 어느 정도의 자원이 필요하게 될지 예측할 수 없으므로 라우터의 queue에 패킷이 쌓임 → queueing delay 길어짐, 컴퓨터 시스템에서 버퍼는 한계가 있으므로 패킷이 쌓여 버퍼가 꽉 찼을 때 또 새로운 버퍼가 들어오면 패킷 loss가 발생함

이처럼 Packing Switching은 네트워크 자원을 효율적으로 share할 수 있지만, queueing delay나 loss가 발생할 수 있음

congestion : queueing delay 길어지고, loss까지 발생한 상황

 

Packet switching vs circuit switching

resource sharing 측면에서 비교

circuit switching은 10명 나눠주면 끝

packet switching 35명이 같이 사용한다고 하더라도 10명ㅇ 동시에 active일 확률은 less than 0.0004

데이터 전송 시작해놓고 idle하는 것을 반복하는 사용자라면 packing switching이 훨씬 많은 사용자를 동일한 link에 수용할 수 있다. 즉 resource sharing이 훨씬 효율적으로 일어난다.

call set up하면 컨트롤 오버헤드 발생하는데 packet switching은 데이터 발생하자마자 목적지 주소만 찍어서 전송하면 됨

하지만 packet switching은 resource 예약 X이므로 congestion 일어날 수 있는 게 문제.

 

audio/video가 발생시키는 데이터 = streaming 데이터, 여기에서는 delay가 중요 → 프레임이 너무 늦게 도착해도 안 되고, 너무 일찍 도착해도 안 됨. 네트워크에서 딜레이가 일정 값 미만이어야 하는데 packet switching에서는 그걸 보증할 수 없음. 네트워크 상황에 따라서 queueing delay가 발생함. source에서 destination으로 가는 동안 queue가 길어서 queueing delay가 커지면 데이터 전송이 지연될 수 있음.

⇒ 어떻게 하면 packet switching에서 circuit switching같은 양상을 보이게 할 수 있을까? (chapter 7에서 소개되고 있음)

 

source에서 destination까지 데이터를 전달하는 것이 네트워크 코어의 역할인데, 그 방법은 크게 circuit switching과 packet switching으로 나눌 수 있음

network core를 좀 더 자세히 살펴보겠음

코어에는 router들과 네트워크 switch들이 매우 복잡하게 연결돼 있다

network of networks로 연결돼 있음, 즉 structure를 가지고 있음

경제적인 이유와 국가간의 정책으로 인해 점진적으로 evolution 이끌어졌음

인터넷 코어 가장 자리에는 access network들이 있고 이것들은 host를 연결해 주고 있음

어떤 호스트에서 상대 호스트로 데이터가 전달되기 위해서는 서로 연결돼 있어야 함

access network를 연결하는 방법

1. access network를 직접 연결한다→ 확장성이 낮음

  • access network가 n개라면 O(N^2)의 connection이 필요

2. ISP(인터넷 서비스를 제공하는 사업자)가 자신의 network, 즉 라우터들이 연결된 그룹을 가지고 있음. ISP의 라우터들은 서로 다 연결돼 있음 = connected. 따라서 어떤 한 임의의 라우터로부터 다른 라우터로의 경로가 반드시 있다. → 어떤 access network에 물린 한 host에서 다른 host로 데이터 보내려면 이 ISP의 임의의 라우터 하나에 연결돼 있으면 됨. global ISP에 모든 access network 연결돼 있으면 다 갈 수 있음

global ISP : 세상의 모든 access network를 다 연결한 ISP

but, global ISP 사업자가 한 명이 아니고, 한 사업자가 전 세계의 모든 지역을 연결하기 힘듦. 그래서 ISP가 여러 개가 생겨남.

⇒ 서로 다른 ISP에 연결된 access network간에 통신을 할 수 X

대규모의 ISP들은 서로 간에 peering link를 가짐, 서로 연결됨. 이런 ISP 하나에만 연결되면 다른 ISP에 연결된 access network와 통신할 수 있음

IXP (Internet exchange point) : ISP끼리 연결시키는 사업자, 건물을 사서 스위치를 층층이 설치

이처럼 ISP끼리는 peering link 또는 IXP를 통해서 연결

but, 매우 방대한 ISP라 할지라도 모든 곳에 ISP가 접근할 수 없음 = 라우터를 설치하고 access network와 연결하는 link를 다 설치할 수 없음

→ regional ISP가 생김. 작은 규모의 area를 담당해서 인터넷 연결.

Multi-tire hierarchy : 더 작은 지역에 연결하는 regional ISP가 더 큰 지역을 담당하는 regional ISP 접속 서비스를 삼으로써 연결 - 더 큰 ISP에 연결

맨 위에는 tier 1 ISP가 있어야 함, 전세계를 묶어주는 ISP

point-of-presence : regional ISP의 access network 그룹. consumer ISP들이 연결될 수 있도록 provider ISP들이 연결점을 두는 것

point-of-presence들에 있는 link들의 종류 : customers과 연결되는 link, provider ISP와 연결되는 link, 같은 ISP 내에 있는 라우터들끼리 연결되는 link, peering link (같은 level에 있는 다른 ISP와 연결),

tier 1 ISP끼리는 서로 다 연결되어 있음.

regional net도 경우에 따라서 자기와 같은 level의 regional ISP와 peering link 연결함

 settlement-free를 위해서.

regional ISP A와 B가 각각 higher level ISP에 연결돼 있음

위에는 상위 계층에 있는 ISP에 둘 다 연결돼 있음

지역적으로 가까운 두 ISP에 traffic 많이 왔다갔다 할 경우 A-B에 직접 peering link 만들면 higher level로 통하는 traffic 줄일 수 있음 = higher level ISP에 지불하는 비용을 줄일 수 있음, peering link를 통해 주고받는 traffic에 대해서는 비용을 지불하지 말자는 것이 settlement-free. 비용을 줄일 수 있고, delay도 줄일 수 있음.

이처럼 hierarchy 아래쪽에 있는 ISP끼리도 peering 할 수 있음

 

경우에 따라서는 Multi-home을 하기도 함

하나의 ISP는 자신의 위 계층에 있는 ISP 최소 하나에 연결돼야 나머지 세상에 연결될 수 있음. higher level ISP는 여러 개 둘 수 있음. 위 계층에 연결되는 link가 두 개 이상이면 Multi-home이라고 함

위 계층 ISP 하나가 fail이 일어나도 다른 ISP를 통해서 나머지 체계와 연결 가능

content provider networks (e.g., Google, Microsoft) : services, content 제공하는 회사. 굉장히 방대한 양의 데이터를 가지고 있음, 데이터 센터가 전세계에 있음, 이 전세계의 데이터 센터들을 연결해야할 뿐만 아니라 데이터 센터와 유저들을 연결해야 함, 이들 회사가 발생시키는 데이터 양이 굉장히 많음, ISP에 막대한 돈을 지불하게 됨 → 이들 회사가 자신의 network를 만들었음. content provider network. 데이터 센터뿐만 아니라 일부 지역의 사용자들(access network)을 직접 연결하기도 함.

1st tire ISP가 guarantee하는 전세계 구석구석으로의 연결은 할 수 없으므로, 1st tire ISP 최소 하나에는 물려 있어야 함, 하지만 전적으로 의존하지 않고 자기 자신의 network 사용, ISP에 대한 인터넷 연결 비용을 줄이고 service에 대한 control 가능.

ex) Google 30-50 data centers (각 센터에 수백 수천개의 서버가 있음) Private network를 통해서 data centers 상호 연결

Content provide network에 직접 연결된 Access Network로 Data Center에서 데이터를 전송할 때는 ISP에 지불하는 비용 없이 서비스할 수 있음. content provider network에 연결되어 있는 access network가 regional ISP에 속해 있다고 하더라도, higher level ISP를 통하지 않아도 됨.

 

인터넷의 가장자리에는 access network를 제공하는 ISP들이 있음

access network를 제공하는 ISP들은 Regional ISP 혹은 IXP 혹은 content provide network에 직접 연결

hierarchy 제일 위에는 tier 1 ISP가 있고, 전세계를 연결함

tier 1 ISP는 국가&국제적인 coverage ( AT&T, KT)

반응형

댓글