728x90
본 포스팅은 < 컴퓨터 네트워킹 하향식 접근[8판] James F. Kurose, Keith W. Ross 저/최종원, 강현국, 김기태 > 을 참고하여 작성되었습니다.
Ch01 - Introduction
3. Network Core
Network core 네트워크 코어
end system에 보이지 않는 안에 숨겨져 있는 부분
mesh of interconnected routers
- 어떤 데이터를 주고 받는가에 따라 크기와 형태가 모두 다르다
- 그래서 코어 네트워크에서는 패킷의 형태로 데이터를 전송한다.
- packet-switching 패킷 스위칭
- 네트워크에 참가하는 호스트는 무언가의 데이터를 전송할 때 패킷으로 쪼개어 보냄
💬 예를 들어 이해해보자면
- 패킷은 일종의 규격화된 택배 상자이다
- 택배트럭에 실려 고속도로를 타고 배송된다
💡 왜 지연(느려지는 현상)이 생길까?
Packet Switching : Store-and-forward
패킷은 빛의 속도로 전송된다. 패킷은 일반적으로 1000비트 정도 된다
하나의 개체별로 보낸다. 수신이 확인되면 다시 보낸다 ⇒ 지연 발생
- Transmission delay 전송 지연
- L / R (sec)
- 한 개의 L 비트의 패킷을 R bps의 링크에 전송되는 시간
- Store and forward
- 모든 패킷은 다음 패킷이 보내진 후 전송된다
- End-end delay
- 총 2L/R
- 링크에서 이동되는 시간 (전파시간, propagation delay)은 매우 짧기에 무시
Packet Switching : queueing delay, loss
🤔 만약 들어오는 속도가 나가는 속도보다 빠르다면?
⇒ 아직 나가지 못한 패킷들이 라우터의 큐에 쌓이게 된다
- Packet Loss
- 큐가 가득 차서 더이상 저장할 공간이 없다면 loss 손실이 일어난다
두 가지 network-core 주요 기능(동작)
- Forwarding
- 지역적으로 동작
- 라우터의 입력을 적절한 출력으로 연결
- Routing
- 글로벌하게 동작
- 패킷이 이동하는 경로를 설정
Packet Switching의 대안 : Circuit Switching
- end to end 리소스를 할당해준다
- 패킷의 전송이 할당된 만큼은 보장된다
- 다른 패킷에게 간섭받지 않음
- ex) 옛날 전화 시스템
- 사용자 수가 급변하면 여러가지 애로사항 발생
Circuit Switching : FDM & TDM
하나의 circuit을 어떻게 공유할 것인가??
- Frequency Division Multiplexing (FDM) 주파수 분할
- 주파수를 쪼개서 할당
- Time Division Multiplexing (TDM) 시간 분할
- 시간을 slot 별로 나누어 할당
- 각각의 slot을 합쳐 하나의 frame이라고 한다
- 링크가 초당 8,000 frames 을 전송하고 각 프레임은 4개의 시간 슬롯으로 구성되며 각 슬롯이 8비트로 구성되었다면 circuit의 전송률은?
- 링크의 전송률 8 * 4 * 8000 = 256000 ⇒ 256kbps
- 서킷의 전송률 256 / 4 ⇒ 64kbps
Packet Switching VS Circuit Switching
- 비교를 위한 예시 수치들
- 1 Gb/s link
- 100 Mb/s
- 전체 시간의 10%만 활성화
- Circuit 의 경우
- 10 user 까지 할당 가능
- Packet 의 경우
- 35 user 유저가 있다고 가정
- 10명을 초과하는 경우는 문제가 생김
- 확률적으로 10명이상일 확률은 0.04 % (이항분포로 계산가능)
- $nCk * p^k*(1-p)^{(n-k)}$
- 확률적으로 10명이상일 확률은 0.04 % (이항분포로 계산가능)
❓ Circuit Switching 문제
10명의 사용자, 한 번에 1000비트 패킷을 1000개 생성 - 한 프레임은 10개의 슬롯으로 구성, 각 슬록은 1000비트로 구성, 링크 속도는 1Mbps일 때 모두 전송하는데 걸리는 시간은?
➡️ (1초) 단순하게 10명이니까 링크 속도에서 10을 나누면 됨
- Packet Switching은
- 대부분의 시간을 쉬고 있다가 급작스럽게 폭발적으로 데이터를 보내는 경우 대응하기 좋다
- 자원을 공유, 콜 셋업이 필요없기 때문
- 버퍼 오버플로우로 인해 패킷 지연과, 손실이 일어날 수 있다
- 혼잡한 경우 돌아가게 하거나, 데이터를 신뢰하기 위한 기술(프로토콜)이 필요하다
- 인터넷 전화, 영상의 경우 circuit 방식과 같이 지속적으로 안정적으로 보낼 수 있어야한다.
- 이에 따라 여러가지 기술들이 적용될 수 있음
인터넷의 구조 : 네트워크의 네트워크
- 인터넷은 네트워크들이 연결된 네트워크이다
- 좋지 않은 방법이다
- 리소스가 기하급수 적으로 증가
- 중간에 ISP를 통해서 연결
- 하나의 ISP 로 할 수 없다
- global ISP의 기준은 에매하지만 대략 12개정도 존재한다고 한다 (Tier - 1)
- ISP 끼리는 IXP로 연결
- 같은 급의 ISP끼리는 돈을 안냄
- 특정 지역, 단체의 인터넷 서비스를 제공
- 이를 regional ISP라고 한다
- access ISP는 마을, 건물등등 정도…
- 구글과 같은 대기업은 자신들만의 네트워크를 깔아놓음
- 이를 Content provider network라고 함
- 인터넷의 구조도를 간략히 그려보자면 위와 같다
728x90