티스토리 뷰

Network

1.3 네트워크 코어

김남김 2022. 10. 3. 15:17

이전 포스트를 통해 우리는 인터넷 가장자리를 공부하였다.

                                              Link 

그렇다면 이제 End System -------  Packet Switch 에서 --------------- other  Network 중  CORE 부분(패킷 스위치와 링크의 그물망)을 알아보자. 

 

 

패킷 교환

어플리케이션에서 종단 시스템들은 서로 메시지(message)를 교환하는데 해당 메시지를 전체로 보내기엔 용량이 크기에 높은 비용과 손실 위기때문에 그 자체로 보내 지 않는다. 

그렇기에 세그먼트로 나누어 헤더 값에 주소와 추가 내용을 담은 페킷(Packet)이라하는 작은 데이터 덩어리로 분할한다.

 

해당 페킷은 통신링크와 페킷스위치를 거치게 된다. 

여기서! 패킷 스위치가 R비트/초의 속도로 링크에서 L 비트의 패킷을 송신하다면 

패킷을 전송하는데 걸리는시간은 L/R 초다. 

 

 

 

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

대부분의 패킷 스위치는 저장 후 전달 방식을 이용한다.  

 

 

출발지  (p1 ,p2, p3) --------> 라우터 <p1(저장 중)> ------------> 목적지 

 

 

예시로 목적지에 전송할 데이터 p1, p2, p3이 있다고 가정하자. 

출발지에서 p1을 라우터 보내면

라우터에서 p1을 저장 후  목적지에 p1을 전달하게 된다.  

 

 

그럼 p1, p2, p3 가 목적지 노드에 수신할 때까지의 경과시간을 계산해보면 

L/R 시각에 라우터는 첫 번째 패킷을 전송하기 시작하며 

2L/R 시각에 출발지도 두번재 패킷을 전송하기 시작한다. 

3L/R 시각에 목적지 노드는 2개의 패킷을 수시낳게 되고 라우터는 세 번쨰 패킷을 전송하게되어

4L/R 시각에 결과적으로 3개의 패킷이 목적 노드에 수신하게 된다. 

 

 

이와같은 논리를 적용하면  d( 종단간 지연) = N(라우터 개수) * L (크기) / R(전송률) 임을 확인할 수 있다. 

 

 

 

큐잉 지연과 패킷 손실

위에서 패킷스위치는 패킷을 저장하고 전달하였는데 이러한 동작을 하기 위해서 

패킷 스위치 안에는 출력 버퍼(출력 큐라고도 한다)를 갖고 있다. 

 

 

패킷은 한 링크로 전송되어야 하는데 그 링크에 다른 패킷이 전송되고 있다면?! 

패킷은 출력 버퍼에서 대기해야한다. 

이렇게 출력 버퍼에  대기하는 것을 큐잉 지연(queueing delay)라고 하며 네트워크 혼잡 정도에 따라 영향을 받는다. 

 

 

버퍼의 크기가 정해져있기에 꽉 차 있는 상태의 버퍼에 또다시 패킷이 추가되어야한다면 -> 패킷 손실이 발생한다

(도착 패킷 혹은 대기중 패킷 중 하나를 폐기(drop) 한다.)

 

 

 

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

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

모든 종단 시스템은 IP주소를 갖는데 ,

출발지 종단 시스템에서  패킷(세그먼트 + 헤더)을 보내고자 할 때 ! !

해당 페킷의 헤더에 목적지의 IP 주소를 포함시키게 된다. 

 

 

라우터에서는 도착한 패킷의 목적지 주소를 조사하고 이웃 라우터에 전달하게 된다. 

이웃 라우터로 전달하게 될 떄 라우터는 목적지 주소를 출력 링크로 매핑하는 포워딩 테이블(forwarding table)을 갖고 있기에 해당 주소를 검색하여 전달하게 되는 것이다. 

 

 

 

간단한 예시를 두자면 

 

 

 

 

 

A가 Z로 여행을 가고자한다. 그러나 A에서 처음부터 끝까지 Z로 가는 경로를 알고 있진 않기에 

A는 가는길에 B에게 물어봐서 경로를 따라가고

A는 가는길에 C에게 물어봐서 경로를 따라가고

A는 가는길에 D에게 물어봐서 경로를 따라가고

 

                     .     .     . 

 

A는 결과적으로 Z에 도달하게 된다. 

 

 

 

그럼 여기서 의문이 든다.

어떻게 포워딩 테이블은 설정될까?  

 

 

이후에 알아보겠지만  라우팅 프로토콜을 갖고 동작하기 조금 복잡하다.

하지만 간단히 말하면 해당 경로를 알만한 라우터를 소개하고 해당 정보가 전달 되었다면 해당 라우터로 소개하는 포워딩 테이블을 저장하게돈다 .  이러한 최단 경로를 계속해서 테이블에 담게 되는 것이다. 

 

 

 


 

 

링크와 스위치 데이터 이동방식 

링크를 통한 스위치 데이터 이동방식에는 회선 교환 (Circuit Switching)페킷 교환(Packet Switching)이 있다. 

이전 포스트에서 계속해서 페킷 교환을 다뤘으므로 이번에는 회선 교환을 주로 알아보며 패킷 교환가 비교하며 알아보자.

 

 

회선 교환 (Circuit Switching)

회선 교환은 종단 시스템간 통신을 위해 경로상의 자원을 통신을 하는 동안(Session) 예약(reserve)된다.(페킷 교환은 이러한 자원 예약을 하지 않는다)

통신 링크에 다른 사용이 있다면 회선교환은 접속하기위해 큐에서 대기하기도 한다. 

 

 

회선교환의 전통적인 예로는 전화망이 있으며 송신자가 수신자와 전화하기 위해서는 연결을 설정해야하며 

즉, 연결 상태를 유지해야하는 연결이다. (말이 연결이지 해당 자원을 묶어 둔 상태)

이렇게 연결이 유지된 상태는 송수신자간 데이터 전송률을 보장할 수 있다. 

 

 

그렇다면 페킷 교환은 어떨까? 

페킷  교환은 회선 교환과 같이 일련의 통신링크를 통해 전송되지만 예약하지 않는다. 

또한 링크가 혼잡하다면 전송 링크의 송신 측에서 버퍼에 대기한다.  -> 시간내 전달을 보장하지 않는다. 

 

 

 

 

회선 교환 네트워크 다중화 

링크 내 한 회선은 주파수 분할 다중화(frequency - division multiplexing FDM)  혹은 시분할 다중화(time - division multiplexing)로 구현된다. 

FDM 은 링크를 통해 설졍 연결은 주파수 스펙트럼을 공유하며 FM 라디오 방송에서 FDM 을 사용한다 .

TDM은 일정 주기로 프레임(또다른 프로토콜이다)을 시간 슬롯으로 나누어 데이터를 송수신한다. 

 

 

++ 

이러한 회선교환 방식은 단점이 존재한다. 

전화를 하고 있다고 가정해보자.

 A와 B는 대화중이지만 시간 내내 대화를 나누는게 아니라 어느 시간에는 말을 하고

어느시간에는 생각하는 시간을 가진다. 

그렇다면 생각하는 시간에는 굳이 연결을 유지할 필요가 있을까? 

이러한 필요없는 연결 유지는 자원낭비로 여겨진다. 

 

이와 같이 회션교환 방식에서 해당 자원을 사용하지 않는 부분적인 자원이 있기 떄문에 비활용 기간에 대해 논란이 있다. 

 

 

 

 

패킷 교환 VS 회선 교환

 

예전의 경우 패킷교환은 가변적인 지연에 의해 실시간 서비스가 적당하지 않다고 여겼지만

전송 자원의 공유에서 더 효율적이며 구현 비용이 적다는 것에 대해 패킷 교환이 우세를 보이고 있다.(실제 요즘 전화는 페킷 교환을 사용한다고...) 

 

 


 

 

네트워크의 네트워크 

ISP는 하나만 존재하는 것이 아니다. 

아래 그림과 같이 ISP 는 계층 단위로 구성되어있다 .

 

 

1계층 ISP                              1계층 ISP                          콘텐츠 제공자 ( 구글, 아마존) 

 

              IXP                                 IXP

 

                   지역 ISP              지역 ISP              지역 ISP              지역 ISP               

 

접속 ISP 접속 ISP 접속 ISP 접속 ISP 접속 ISP 접속 ISP 접속 ISP 접속 ISP접속 ISP

 

 

 

접속 ISP가 글로벌 ISP 에게 요금을 지불하기에 

접속 ISP를 고객으로 두고 글로벌< ixp, 1계층> ISP를 제공자)라고 보고 이해하자. 

 

 

어느 지역에서 다른 지역으로 잇는 지역 ISP 가 있으며 

각 지역 ISP 는 1계층 ISP들과 연결된다 

 

 

각각의 접속 ISP는 자신이 연결하는 지역 ISP에게 요금을 지불하고

지역 ISP는 1계층 ISP에 요금을 지불한다. 

즉, 각 레이어에 서로가 고객 - 제공자 관계다.

 

 

이렇게 우리는 접속 ISP  - 지역 ISP - 1계층 ISP를 통해 네트워크를 뻗어 나가며 원하는 네트워크에 도달할 수 있게된다. 

또한 PoP(Point of Presence) ,멀티홈, 피어링,IXP(internet exchaging poin) 을 통해 접속 ISP 끼리 연결할 수 있으며 ,

가까운 ISP 에 피어링함으로 비용을 줄이고 상위 ISP와 통하지 않고도 직접 송수신이  가능하게된다. 

 

 

 

 

 

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG
more
«   2024/09   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30
글 보관함