Infrastructure/Networking

[통신 네트워크 설계] #1 네트워크 기본 개념 정리

EddyLee 2024. 3. 7. 02:12

통신 네트워크 설계 : TCP/IP 5계층을 잘 이해해야 한다.

 

7 layer가 사용되지 않는 이유는 밑에 4계층은 독립적으로 수행될 수 있으나 application layer은 결이 비슷하기 때문.

 


수업 전 basic concept

 

<QoS, QoE(Quality of Service, Quality of Experience)>

A. 우리가 동영상을 본다고 할 때 3G, 4G, 5G를 쓴다고 가정하자.

다 같은 셀룰러지만, UHD 영상을 보게 된다면 streaming이 끊기게 보일 것임. 이러면 해당 ISP의 QoS가 좋지 않은 것임.

QoS는 Service Company로부터 측정 되는 것. (0~100% 사이)

QoS는 user로부터 측정되는 것이 아님. user는 QoE를 하는 것임.

 

QoS는 ISP가 share, QoE는 user가 하는 것.

 

QoS는 기술적인 측면을 업데이트하려는 ISP의 노력, QoE는 실질적으로 user가 경험하는 것들

=> 하나가 높으면 같이 높을 수도 있지만, 아닐 수도 있다.

 

 

<Connecting devices>

1. Switch

: 하나가 들어오면, IP를 확인하고 거기에 보낸다.

: 전달이 우선

2. Hub

: just broadcast

"switch와 hub의 차이"

3. Repeater

: 리피터는 network에서 사용되는 것이 아님

: 증폭기 (신호를 더 증폭해서 약해지지 않게)

4. Router

: 수많은 프로토콜이 존재한다.

: decision에 AI를 사용할 수 있다.

: 경로를 찾아줌

: 라우터들은 각각 forwarding algorithm을 가질 수 있다. (ex. BGP)

5. AP

: LAN&wireless에서 사용되는 것.

6. Gateway

: 다른 네트워크가 연결된 기기들 사이를 연결해주는 역할을 함.

: 내가 다른 친구한테 wifi로 패킷을 보내고 진호는 cellular를 사용중이라고 하자. 둘의 패킷은 현저히 다르다. wifi 패킷은 encrypted돼서 전송되는 중. gateway가 converted해준다.

7. BS/eNB/gNB

: BS는 3G에서 사용되는 것. 4G를 사용하면 BS가 eNB로 정의된다. 5G를 사용하면 BS가 gNB가 된다.

: 내 회사에서 4G를 사용한다고 했는데 gNB를 사용한다고 한다 => 네트워크 설계가 잘못된 것임.

 

 

<data flow>

: 모든 layer들이 어떻게 작동하는지 흐름들을 아는 것.

: main issue on the physical layer

 

data flow와 network design

한 라우터에 4개의 디바이스가 연결됐다고 가정.

라우터는 internet과 연결돼있는데 5MBps가 최대 속도라고 하자.

각 디바이스는 2MBps를 보내고 있다면, packet drop이 일어나거나 NACK를 많이 수신할 것이다.

그러면 network design이 잘못된 것임.

=> "bottleneck" problem

 

<data types>

: 오디오, 비디오, 텍스트 등등

 

 

 

네트워크를 설계할 때

location factor도 고려해야 한다.

예를 들어 wireless에선 라우터 옆에 있으면 신호가 높을 것.

우리 학교에 두 개의 BS가 존재한다면? signal이 overlap될 것임. => 이러한 issue도 설계할 때 고려해줘야 한다. (handover같은 것)

 

 

 

<network design할 때 유의해야 할 점>

* location factor

: area를 모두 고려해줘야 한다.

: 모든 가능성을 고려해야 함.

(BS handover같은 것)

data flow

 

 

<tradeoff>

requirement를 개발자가 확인함.

개발자가 agree -> tradeoff

 


Start at the Top

 

SDLC : Systems Development Life Cycles

인터넷도 시스템, 대학교도 시스템..

시스템의 life cycle은 무엇일까?

 

Analyze 단계

: as a customer로서 생각, as a provider로서 생각해봐야 함.

: customer이라면 어떤 시스템이 필요할까?

~ market에 우리 회사 네트워크를 낸다면 algorithm, service를 생각해봐야 함.

: designer에게 가장 중요한 고려해야할 요소.

: 뭐가 더 빠를까, 뭐가 더 user friendly할까 등등

: 문제를 찾고, solving하는 과정. => 계속 문제가 발견될 것이고 그때마다 solving 해야 함.

 

Design 단계

모든 possible problem을 고려한 뒤, logical network design

이후 physical network design

 

 

Test, optimize and document design

: 만들어진 네트워크를 테스트하고 최적화하는 단계

 

 

이제 운용이 잘 된다면, cost를 최적화 해야함

 

 

 

[과제]

5개의 방이 있는 집, 각 방마다 500m 거리가 있다.

LAN을 만들어야 한다.

one cable이 주어졌다.

network design을 해봐라.

 

> cost를 고려해야 함.

 

 

Logical network설계할 때

ppt에 나와있는 5가지를 다 고려해야함

 

 

Resiliency도 고려해야함 (fault tolerancec) - 개구리 얘기 했던 것 : 네트워크에선 traffic tolerance들도 고려해줘야 함