개요
성공과 실패를 결정하는 1% 네트워크 원리를 공부하고 정리한 글이다.
Chapter 4 - 액세스 회선과 프로바이더의 탐험
5장과 더불어 가장 생소하고 어려웠던 내용.... 🥹 라우터부터 액세스 회선에서 이동하는 부분은 잘 알아두면 좋을 듯하다.
STORY 1 | ADSL 기술을 이용한 액세스 회선의 구조와 동작
1-1) 인터넷의 기본은 가정이나 회사의 LAN과 같다.
패킷을 중계하는 부분과 라우터의 기본적인 구조/동작은 같다.
■ 인터넷과 LAN의 차이점
- 중계 장치 간의 거리 : 가정이나 회사의 LAN은 멀어봤자 수백미터 정도이지만, 인터넷은 한국과 미국을 연결하는 부분은 태평양을 넘어야 하므로 케이블로 연결하는 것이 어려울 정도로 중계 장치 간의 거리가 멀다.
- 패킷의 중계 대상을 제어하는 부분 - 히 경로 정보를 테이블에 등록하는 점 : 인터넷의 라우터는 경로 정보가 10만 개 이상 등록되어 있고, 이는 시시각각 변한다. 이 모든 걸 사람이 통제하기 어렵기 때문에 자동화해야 한다.
1-2) 사용자와 인터넷을 연결하는 액세스 회선
패킷 IP 헤더의 수신처 IP와 테이블을 비교하여 해당 위치로 보낸다는 점(패킷 중계 동작)은 같다.
■ 이더넷과 인터넷의 패킷 송신 동작의 차이점
인터넷 접속용 라우터는 액세스 회선의 규칙에 따라 패킷 송신 동작을 실행한다.
- 액세스 회선(통신회선, 접근회선)
- 일반 가정이라면 ADSL, FTTH, CATV, 전화회선 등을 이용한다. 회사의 경우 전용 회선이 추가된다.
- ADSL(Asymmetric Digital Subscriber)
- 전봇대에 부설된 전화용 금속제 케이블을 이용하여 고속으로 통신하는 기술
- 상향(사용자 → 인터넷 : 업로드)과 하향(인터넷 → 사용자 : 다운로드)의 통신 속도가 서로 다르다.
1-3) ADSL 모델에서 패킷을 셀로 분할한다.
■ 인터넷 접속용 라우터를 거친 패킷은 총 3가지(PPP, PPPoE, MAC) 헤더가 붙는다.
■ ADSL 모뎀은 패킷을 셀 단위로 작게 분할한다.
- 셀: 맨 앞 부분에 헤더(5 BYTE)와 데이터(48 BYTE)로 이어지는 작은 데이터의 덩어리
- ATM 통신 기술에 사용하기 위해서 패킷 → 셀로 분할한다. 셀을 사용하는 상태로 두면 전반적인 설비들과 연대할 수 있기에 패킷을 굳이 셀로 분할한다. ** 셀로 분할하지 않는 ADSL 사업자도 있다! 반드시 써야하는 건 x 설계에 따라 달라진다.
- ATM(Asynchronous Transfer Mode)
- 전화 회선의 개념에 기초한 구형 전화 기술의 연장선에 있는 통신 방식
- 셀을 운반하는 부분은 TCP/IP와 비슷(but, 컴퓨터 통신에는 적합하지 않고 인터넷 통신에 적합하다!)
1-4) ADSL은 변조 방식으로 셀을 신호로 변환한다.
■ LAN의 경우, 사각형 신호를 통해 0과 1을 나타내는 신호로 변환했지만 ADSL은 좀 더 복잡한 방식을 쓴다.
사각형 신호의 경우…
- 파형이 뭉개지기 쉽다.
- 거리가 떨어졌을 때 오류가 발생하기 쉽다.
- 넓은 범위의 주파수가 포함되어 있다. (낮은 주파수 ~ 높은 주파수 모두 케어) 즉, 잡음을 제어하기 어렵다.
■ 직교 진폭 변조(QAM) = 진폭 변조(ASK) + 위상 변조(PSK)
- 진폭 변조 (그림의 빨간색 부분)
- 파동의 진폭 크기에 따라 0과 1을 대응
- 대응하는 비트 수를 늘리면 전달하는 데이터 양이 많아지면서 속도를 올릴 수 있다.
- 하지만 과도하게 늘리면 수신측에서 인접 단계와 오인할 가능성이 커져 오류의 원인이 된다. 이러한 일을 방지하기 위해서 단계 수를 억제해야 한다.
- 위상 변조 (그림의 파란색 부분)
- 파는 일주기만에 원래의 모습으로 돌아간다. 이 주기별로 파의 각도를 나타낸 것을 위상이라고 한다.
- 위상변조는 이 위상에 따라 비트를 대응하는 것이다.
직교 진폭 변조는 신호의 진폭과 위상에 각각 1비트를 대응시켜, 한 개의 파에 2비트 분의 데이터를 대응하여 두 방식을 결합한 방식이다.
1-5) ADSL은 파를 많이 사용하여 고속화를 실현한다.
- 주파수가 서로 다른 파를 혼합하여 파를 합성한다.
- 특정 주파수만 통과 가능한 필터 회로를 통해 주파수마다 파를 분리한다. 이를 통해 여러 주파수의 파를 합성한 것을 신호로 사용하는 것도 가능하다.
- 다수의 파에 비트값을 대응시켜 고속화한다.
- 잡음이 없는 주파수의 파에는 다수의 비트를 대응시키고, 잡음이 많은 주파수의 파에는 소수의 비트를 대응시킨다. 모든 비트 수의 합계로 전체 전송 속도가 결정된다.
*ADSL은 다운로드 속도가 더 빠르다! → 비트 수 차이
1-6) 스플리터의 역할
■ ADSL 모뎀과 DSLAM 모델 사이에서 ADSL용 신호와 전화용 신호를 분리한다.
전화기 측에 ADSL 신호가 흐르지 않도록 한다. → 전화기에는 전화 신호만 흐르고 ADSL 모뎀으로 향하는 신호는 그대로 흐른다.
- 이 스플리터는 전화기로 들어오는 ADSL을 차단할 뿐만 아니라, ADSL로 가는 전화기의 영향도 차단하는 기특한 기능을 가졌다!
- 스플리터를 통해서 수화기를 들고 / 내려논 경우의 신호 전달을 제어할 수 있다. 만약 스플리터가 없다면 수화기를 든/내린 경우의 신호 전달 방향이 달라서 ADSL에서 트레이닝을 이에 맞춰 다시 실행해야 한다. 그러면 그 사이에 통신이 수십 초 중단된다.
1-7) 전화국까지의 여정
■ 스플리터의 모듈형 커넥터 → 배선반(IDF, MDF) → 보안기
- 배선반MDF(Main Distribution Frame): 주 배선반
- IDF(Intermediate Distribution Frame): 중간 배선반
- 보안기
- 낙뢰와 같이 외부 전화선에서 과대한 전류가 흘러들지 않도록 보호하는 장치
■ 신호는 보안기까지 지나서 전주(電柱 - 전봇대)의 전화 케이블로 이동한다. 전체의….
전화 케이블은 사용자와 가까우면 전봇대 내부에 부설되어있다. 도중에 전주의 둘레에 묶은 금속 파이프 속에 들어가 여기에서 지하로 들어간다. - 이를 궤선점이라고 한다.
많은 케이블을 한꺼번에 전주를 통해 전화국까지 연결하는 것은 비현실적이기에, 전화국에 어느 정도 가까운 곳에서 지하에 케이블을 매설한다. 전화국에 가까워지면 지하 케이블 수가 증가하므로, 이것을 모아서 매설하는 부분은 지하도처럼 된다. - 이를 동도라고 한다.
이 동도를 통해 전화국에 들어간 케이블은 MDF에 하나씩 연결된다.
■ 전화 케이블 속을 신호가 통과할 때 여러 가지 잡음의 영향을 받는다.
- 전화 케이블은 금속제 신호선 속에 전기 신호가 흐른다는 점이 이더넷 트위스트 케이블과 공통된다. 또한, 전화 케이블은 ADSL과 같은 높은 주파수의 신호가 흐른다는 점을 가정하지 않았기에 잡음의 영향을 받기 더 쉽다. → 이더넷과 같이 케이블 외부의 주파수 / 케이블 내부에서 발생하는 잡음의 영향으로 신호가 변형된다.
- 잡음이 많은 장소에 전화 케이블이 가설되면 속도가 저하될 가능성이 있다. ex) 전철의 선로 옆
- 케이블의 쿼드 속/인접한 서브 유닛의 가까운 위치에 ADSL 신호선과 ISDN 회선의 신호선이 함께 들어있는 경우, ISDN에서 누설되는 잡음의 영향이 있다. (최근엔 많이 해결된 상황)
1-9) DSLAM을 통과하여 BAS에 도달한다.
■ 배선반, 스플리터를 통과하여 DSLAM에 도착하면 전기 신호가 셀로 복원된다. → ADSL과 같음
- 셀로 복원하는 작업을 여러 개의 ADSL로 하면 장소 차지 + 동작 감시가 어렵기에, ADSL 모뎀의 기능을 하나로 묶어, DSLAM으로 만들어서 사용한다. 즉, DSLAM은 ADSL을 여러 개 모아둔 장치다!
- 한 가지 다른 점은, ASDL 모뎀은 이더넷 인터페이스, DSLAM은 ATM 인터페이스를 가진 것이 대부분이다.
■ DSLAM을 나온 셀은 BAS라는 중계 장치에 도착한다. - 패킷 복원 및 터널링 중계
- BAS는 ATM 인터페이스로 구성되어, 수신한 셀을 원래의 패킷으로 복원한다.
- 수신한 패킷의 맨 앞부분의 MAC 헤더와 PPPoE 헤더를 버린다.
- MAC과 PPPoE는 BAS에 도착하기 위해 사용된 것이기 때문에, 이더넷 인터페이스의 라우터가 패킷을 수신했을 때 MAC 헤더를 버리는 것과 같다.
- 이후, 터널링용 헤더를 붙여 터널링 출구로 중계한다.
STORY 2 | 광섬유를 이용한 액세스 회선(FTTH)
2-1) 광섬유의 기본
빛 신호를 전달하는 가느다란 유리 또는 플라스틱 섬유의 일종이다. 안쪽에 있는 코어 속에 광신호를 흘려서 데이터를 전달한다.
광신호는 의외로 단순하다. 등이 켜지면 1, 꺼져서 어두우면 0을 나타내는 것 뿐이다.
■ 광섬유를 이용한 통신의 원리
- 디지털 데이터를 전기 신호로 변환한 후, 전기 신호를 광신호로 변환한다.→ 전압이 높으면 밝아지고, 낮으면 어두워진다.
- 전기 신호를 LED나 포토 다이오드같은 광원에 입력하면, 입력된 전기 신호의 전압에 따라 빛을 발한다.
- 이 빛을 광섬유 안에 통과시켜서 흘려 보낸다.
- 수신측에서는 수광 소자(빛에 감응하여 밝기에 따라 전압을 일으킴)를 통해 빛으로부터 전기 신호를 낸다.
- 이 전기 신호를 디지털 데이터로 변환해서 수신한다.
2-2) 싱글모드와 멀티모드의 차이
광섬유로 빛을 통과시켜서 전달하는 건 꽤나 직관적이지만, 그 빛의 전달 방법이 상당히 복잡하다..... 상당히...상당히...!
■ 입사각이 작은 빛만 경계면에서 전반사되어, 코어를 통해 흐른다.
광원(LED 등)에서 나온 빛은 광섬유의 코어 부분에 들어간다. 광원에서 나온 빛은 흩어지므로 광섬유의 코어 부분에 여러 각도로 들어간다. 입사각이 크면 경계선에서 굴절되어 밖으로 나가버린다.
- 입사각이 작은 빛이 전부 코어 속을 진행하는 것은 아니다. → 위상차가 없는 경우에만 소멸되지 않고 광섬유 속을 흐른다.
- 빛은 코어와 클래드의 경계면에 부딪혀서 반사될 때 위상이 달라진다. 따라서 빛이 소멸되지 않고 유지되는 환경 유지를 위해, 코어와 클래드의 위상이 달라지지 않는 각을 찾아서 코어의 직경을 설정한다.
■ 빛 소멸 방지 → 코어와 클래드의 위상이 달라지지 않는 각도 찾기 → 코어의 직경 제어
코어의 직경은 2 가지가 있다.
싱글모드
- 가장 작은 빛만 입사되도록 코어를 가늘게 만든 광섬유다.
- 신호의 변형이 적다. → 케이블 길이가 길어져도 상관없다. → 멀리 떨어진 장소에 있는 건물 사이에 사용한다. (FTTP)
멀티모드
- 코어의 직경이 굵고 입사각이 큰 빛도 들어가므로 위상이 가장 작은 것, 두 번째로 작은 것, 세 번째로 작은 것과같이 복수의 빛이 코어속을 진행하는 광섬유다.
- 빛의 양이 많다 → 신호의 변형이 잦다. → 광섬유의 길이를 짧게 해야 오류를 줄일 수 있다. → 한 건물 내에서 사용한다.
2-3) 광섬유를 분기시켜서 비용을 절감한다.
ADSL 대신 광섬유를 사용해서 사용자 측의 인터넷 접속용 라우터와 인터넷 측의 BAS를 연결하는 것이 FTTH다.
STORY 3 | 복수 서버에 리퀘스트를 분배한 서버의 부하 분산
3-1) 처리 능력이 부족하면 복수 서버로 부하 분산된다
■ 서버에 액세스가 증가할 때
- 회선을 빠르게 하기 → 서버의 처리 능력이 따라잡지 못할 수 있다.
- 서버 머신을 고성능으로 교체하기 → 한계가 있다.
- ⇒ 복수 서버를 사용하여 서버 한 대당 처리량을 줄인다.
■ 여러 대의 웹 서버를 설치하고 한 대가 담당하는 사용자 수를 줄인다.
DNS 서버에서 분배
- DNS 서버에 같은 이름으로 여러 대의 웹 서버를 등록한다. DNS 서버는 조회가 있을 때마다 차례대로 IP 주소를 되돌려 준다. ⇒ 라운드 로빈
- 192.0.2.60 → 192.0.2.70 → 192.0.2.80
- 192.0.2.70 → 192.0.2.80 → 192.0.2.60
- 192.0.2.80 → 192.0.2.60 → 192.0.2.70
- DNS는 웹 서버의 상태를 확인하지 않고 중계만 하므로, 웹 서버가 중단/고장된 상황에 대응하기 어렵다.
- 라운드 로빈을 통해 웹 서버를 분배하면 웹 사이트의 연속성이 끊긴다. 예를 들어서, 첫 번째 페이지에서 성명 입력 후에 두 번째 페이지에서 신용카드 번호를 입력하는 케이스가 있다.
- TO-DO : GCP LB 라운드 로빈….
3-2) 부하 분산 장치를 이용해 복수의 웹 서버로 분할된다
부하 분산 장치 IP를 웹 서버 IP 대신 DNS에 등록한다.
■ 대화가 복수의 페이지에 걸쳐있다면…
HTTP stateless: HTTP의 기본 동작은 먼저 Request Message를 보내기 전에 TCP 연결을 하고, 전송이 끝나면 연결을 끊는다.
Cookie: HTTP 전후 관계를 파악하기 위한 값을 HTTP 헤더 필드에 부가하는 방법이 고안되었다.
STORY 4 | 프로바이더의 내부
4-1) POP와 NOC
■ 액세스 회선, 터널링을 통과한 패킷은 프로바이더의 POP에 설치된 라우터에 도착한다.
POP(Point Of Center): ADSL/FTTH같은 액세스 회선은 사용자가 계약한 프로바이더의 설비에 연결되어있는 것
NOC(Network Operation Center): POP에서 들어온 패킷이 여기로 모여든다. 이곳에서 목적지 근처의 POP나 다른 프로바이더로 패킷이 흘러간다.
4-2) 건물 밖은 통신 회선 등으로 접속한다.
■ 건물 내부에서 모든 패킷이 모이는 종점 라우터, POP & NOC
POP나 NOC는 건물 안에 하나씩은 있는 서버룸/머신룸과 비슷하다. 건물 안의 어딘가에 있으므로 그 안에 있는 라우터는 케이블로 직접 접속하거나, 스위치를 경유하여 접속한다.
건물 밖과는….
- 케이블로 연결
보통 이 케이블은 트위스트 페어 케이블을 사용하는데 아무래도 패킷 송수신양이 엄청 많다보니, 트페케이블의 한계에 도달할 때가 있다. 이런 경우는 광섬유 케이블을 사용한다. - 광섬유 케이블
광섬유 케이블을 건물 각각에 가지고 있다는 것은 현실적인 측면(기술, 비용)에서 어렵다. 따라서 광섬유를 가진 회사는 자체적으로 사용 + 다른 곳에 광섬유 대출해주기를 동시에 한다. 이 광섬유를 세분화해서 일부분을 고객에게 빌려주는 형태다. → 이런 종류의 서비스를 통신 회선이라고 한다!
STORY 5 | 프로바이더를 경유하여 흐르는 패킷
5-1) 프로바이더끼리의 접속
■ 서버 -클라이언트가 같은 프로바이더에 접속한 경우
라우터는 라우터끼리 정보 교환 후 테이블 자동 업데이트해서 패킷을 중계한다.
■ 서버 -클라이언트가 다른 프로바이더에 접속한 경우
프로바이더는 다른 프로바이더와 정보 교환도 하므로, 라우팅 테이블에 송신할 프로바이더의 경로 정보가 등록되어 있다.
⇒ 결국 인터넷에는 동일 프로바이더인지, 다른지 상관없이 모든 경로가 등록되어 있다. 이러한 경로표로 패킷 중계
5-2) 프로바이더끼리 경로 정보 교환하기
■ BGP(Border Gateway Protocol)
주변의 여러 라우터들에게 어떤 라우터가 어느 AS에 속해 있는지에 대한 정보를 소문 내는 것 이다.
- 트랜지트(transit): 한 프로바이더로부터 경로 정보를 받아, 모든 프로바이더에 패킷을 보낼 수 있게 되는 상태. 즉, 한 프로바이더로부터 모든 프로바이더의 주소 정보를 알아낸다.
- 비트랜지트/피어(peer) : 피어들 간의 정보만 교환한다.
5-3) 사내 네트워크에서 자동 등록하기
최단 경로를 선택하되, 의도하지 않은 상대로부터 오는 패킷을 중지하는 구조로 되어있다. 단순히 최단경로로만 구성하면 의도치 않게 비용 부담에 응하지 않는 프로바이더로부터 패킷이 흘러올 수 있고, 다른 회선을 이용해버릴 수도 있기 때문이다.
- 경로 정보를 교환하는 상대 지정하기
- 사내에서는 무차별적으로 모든 라우터와 경로 정보를 교환하지만, 프로바이더 간에는 특정 라우터와 1:1로 한다. 이 일대일으로 대응된 경로 정보를 통지한 상대 이외의 패킷은 흘러들어오지 않는다.
5-4) IX(Internet eXchange)의 필요성
- 프로바이더끼리 직접 1:1로 연결하지 않아도 IX를 통해 통신할 수 있다.
- 자연재해에 대비하여, 자가 발전 설비를 갖춘 내진 구조의 건물 안에 있다.
정확히 말하면 건물 어딘가에 IX가 있고, IX의 중심에는 고속 LAN의 인터페이스를 다수 장착한 레이어 2 스위치가 있다. 이때 IX의 스위치는 스위칭 허브와 같이 동작한다. → ARP를 통한 중계 대상 라우터의 MAC 조사 → MAC 헤더에 기록하여 패킷 전송
'CS > Network' 카테고리의 다른 글
[Network] 네트워크 원리(6) 웹 서버에 도착하여 응답 데이터가 웹 브라우저로 돌아간다 (0) | 2024.11.05 |
---|---|
[Network] 네트워크 원리(5) 서버측의 LAN에는 무엇이 있는가? (2) | 2024.10.24 |
[Network] 네트워크 원리 (3) 케이블의 앞은 LAN 기기였다. (1) | 2024.09.03 |
[Network] 네트워크 원리(2) - TCP/IP의 데이터를 전기 신호로 만들어 보낸다 (0) | 2024.08.27 |
[Network] 네트워크 원리(1) 웹 브라우저가 메시지를 만든다. (0) | 2024.08.08 |