지금까지 배웠던 내용들을 살펴보자. 브라우저에서 만들었던 HTTP 메시지가 여러 계층을 거치며 헤더들을 더해나갔다. 이후 랜 카드를 거쳐 신호로 변환되었다.
앞으로는 이러한 신호가 어떻게 인터넷 공간까지 이동하는지에 대해 소개하겠다.
소개하기 앞서 간략하게 알아보면
(간략화한 이미지 )
로 동작한다. 이제 이들에 대해 상세히 알아보자.
신호는 당연하게도 케이블을 통해 흐른다.
케이블에도 여러 종류가 있는데 이들을 분류해보면 다음과 같다. 물리 계층의 장비들이다 보니 실제로 접해본 장비들이 많을 것이다.
동축 케이블은 내부 도체(구리)-절연체-외부 도체-피복 으로 구성된 케이블이다. 아날로그와 디지털 신호 모두 전송할 수 있다는 특징이 있으며, 여러 층으로 구성되어 있어 외부 간섭이 적고 전력 손실 또한 적다. 주로 TV 선에서 많이 사용된다. 이전 챕터에서 다뤘던 10base5
도 여기에 속한다.
이더넷 케이블, 해저 케이블도 동축 케이블을 사용했으나, 요즘에는 이 후 배울 TP 케이블, 광 케이블을 주로 사용한다.
(TP 케이블)
선을 꼬아, 외부 간섭을 줄인 케이블이다. 가격이 저렴하여 가정용으로 자주 사용한다. 우리가 아는 랜선(이더넷 케이블)으로도 불린다. TP 케이블의 여러 종류 중 일반적으로 저렴한 UTP(Unshielded Twisted Pair) 케이블을 주로 사용한다.
다이렉트와 크로스 방식이 있다. 기기간 직접적인 송수신 매개를 위해 크로스 방식이 생겨났고 이후 허브의 등장으로 직접적으로 매개할 필요가 없어졌기에 이를 반영한 다이렉트 방식이 나타났다. 서로 다른 두 가지 방식 중 어느 방식을 사용하였는지 확인하기 어렵다는 문제가 있었고, 이를 해결하기 위해 자동으로 어떤 방식인지 감지하여 처리 하는 MDI/MDI-X
모드들이 등장하였다.
또한 단자로써 RJ-45
를 주로 사용한다.
(MDI
모드와 RJ-45
단자는 책에서 빈번히 언급되기에 다루었다.)
광섬유를 이용한 케이블이다. 빛의 회절을 이용하여 통신한다. 비용이 비싸지만, 빠른 속도와 적은 간선이라는 장점이 있어 해저 터미널, 인터넷 제공(FTTH)에서 사용한다.
인터넷에서는 앞서 살펴보았던 TP 케이블을 사용한다. 또한 앞으로 이는 이더넷 케이블로 칭한다.
결국 신호는 이더넷 케이블을 통해 리피터 허브에 전달된다.
(리피터 모습)
리피터는 단순히 신호를 증폭하고 정형화하는 역할을 한다. 리피터가 필요한 이유는 신호 전달 과정에서 왜곡현상을 해소하고, 랜선이 고질적으로 갖는 길이 한계 극복하도 돕기 때문이다.
단순한 신호 관련 역할만 수행하기에 L1 계층에 속한다.
(허브의 모습)
리피터의 증폭 역할에 다양한 기능(멀티 포트, 패킷 모니터링)을 더한 장치이다. 즉, 포트를 통해, 여러 개의 기기를 연결할 수 있다. 들어온 패킷은 브로드캐스팅하여 모든 기기에 전송되며, 기기가 많다면 부하가 심하다.
단순한 신호 관련 역할만 수행하기에 L1 계층에 속한다.
(브리지의 모습)
이 역시 리피터에 다양한 기능을 더한 장치이다. MAC 주소 테이블을 기반으로 목적지를 식별하여 패킷을 전달한다. 따라서 L2 계층에 속한다.
이전 리피터, 허브는 다중 데이터 전송 시 충돌이 발생하였다. 충돌이 발생 가능한 영역을 collision domain라고 하는데, 모든 영역이 이에 속하였다. 이에 반해, 브리지는 여러 개의 포트를 사용하여 충돌 문제를 어느정도 해소하였다. (collision domain의 범위를 감소시켰다.)
브리지는 소프트웨어 기반으로 동작하였으나, 스위치는 하드웨어 기반으로 동작하여 효율적이고 성능도 뛰어나다. 또한 더욱 많은 포트를 사용하여 collision domain의 범위를 더욱 감소시켰다.
리피터 허브를 통과한 데이터는 이더넷 케이블을 거쳐 스위치 허브에 도착한다. 이는 FCS 검사 이후 (오류가 있다면 폐기한다.) 버퍼 메모리에 저장된다. 이후 MAC 주소 테이블에 따라 포트번호가 결정된다면, 스위치 회로를 경유하여 패킷을 송신한다. 포트는 일종의 랜 카드라고 생각하면 이해하기 쉽다. 실제로 기본 동작(이진 데이터를 신호로 송신)도 유사하며, 재밍 신호를 통해 충돌을 방지하는 동작 또한 존재한다. 이러한 허브를 이용하여 여러 개의 송수신 동작을 진행할 수도 있다.
예외적으로, 송신한 포트와 수신한 포트가 같은 경우 통신 에러 방지를 위해 패킷을 폐기한다. 또한, MAC 주소 테이블에서 주소를 찾지 못했을 경우는 모든 포트에 송신하여 응답이 돌아오는 포트를 테이블에 등록하여 이후에 찾을 수 있도록한다.
리피터 허브는 송신과 수신 중 한 가지만 동작할 수 있었으나, 스위치 허브는 두 가지 모두 동시에 동작할 수 있다. (케이블이 송수신 용도별로 나누어졌기 때문이다.) 이러한 특징을 반영한 이더넷의 모드가 전이중 모드이다.
전이중 모드는 이더넷에서 송수신을 동시에 할 수 있는 모드이다. 이전까지 신호의 흐름을 나타내기 위해서 사용 되던 링크 펄스를, 전이중 모드 등장 이후에는 반이중 모드* 와 전이중 모드를 구분하고 자동으로 재조정(auto negotiation)하기 위해 사용하고 있다.
*반이중 모드: 송신 혹은 수신 한 가지만 가능한 모드 (개별적으론 둘 다 사용할 수 있다.)
동축 케이블
TP 케이블
광 케이블
리피터, 허브, 브리지, 스위치
collision domain
전이중 모드